【问题标题】:Trying to work on a client's Drupal site from my local machine尝试从我的本地计算机上处​​理客户的 Drupal 站点
【发布时间】:2018-05-03 23:18:37
【问题描述】:

我有一个客户希望我更新他们的 Drupal 站点。我以前从未这样做过,我想从我的本地机器上处理它,以防万一出现问题。我什至不知道从哪里开始!

首先,我如何访问客户的站点文件,以便将它们放到我的计算机上?我曾尝试将客户提供给我的信息输入 Cyber​​duck,但它无法让我访问。有没有其他方法可以访问?

另外,我如何在本地托管它?我有 XAMPP,但我不知道如何使用它。

话虽如此,我找到了一些可以帮助我设置本地服务器的论坛。我只是不知道如何将文件从实时服务器获取到我的计算机。

我知道这是一个超级菜鸟问题,但我可以使用帮助。谢谢!

【问题讨论】:

  • "我以前从来没有这样做过" , "我什至不知道从哪里开始!"那你为什么要为“客户”这样做?
  • 这是我在其他项目中合作过的客户。

标签: php drupal xampp content-management-system cyberduck


【解决方案1】:

好吧,对于基本问题,您必须从客户那里获得正确的凭据。真的没有其他选择:D

当您使用它时,您还需要网站数据库的副本。

对于“如何在本地托管它?”这个问题。以下是我的做法。

让网站进入版本控制。

鉴于您已获得 (S)FTP 凭据,我猜该站点不受版本控制。如果这是正确的,那么这可能是您想要做的第一件事。这将允许您跟踪您在本地站点上所做的与生产版本不同的更改。

  1. 在您的计算机上创建一个空目录。
  2. 在终端中导航到目录并运行git init
  3. .gitignore 文件添加到该文件夹​​(您可以创建自己的文件,或使用one customized for Drupal)。
  4. 将网站文件下载到步骤 1 中创建的目录中。
  5. 通过在终端中运行以下命令将目录中的文件添加到 git 存储库:git commit -am "First commit of Drupal files to repository."

有一个很好的help page about working with Drupal in git on drupal.org

创建并填充您的数据库。

  1. 从实时站点获取数据库转储。
  2. 在您的机器上创建一个新的数据库和数据库用户。
  3. 将数据库转储导入新数据库。
  4. 将数据库凭据记录在settings.phpsettings.local.php 中,并将它们存储在安全的地方,最好是在密码管理器中。
  5. 更改settings.phpsettings.local.php 中的数据库凭据以匹配您刚刚创建的数据库的凭据。

    (为了安全和避免混淆,我总是使用与实时站点不同的名称、用户和密码创建本地数据库。这意味着如果您的本地凭据被泄露,实时站点不会,这意味着您无法意外地连接和更改实时站点的数据库。)

在 XAMPP 中设置网络服务器

  1. 在 XAMPP 中创建一个新站点,例如名为example.local 指向包含文件index.php 的目录
  2. 在您的计算机上添加名为/etc/hosts 的文件:

    127.0.0.1 example.local

  3. 通过访问例如测试这在浏览器中是否有效。 http://example.localhttp://example.local/robots.txt

将本地更改移动到生产站点

您将如何做到这一点在某种程度上取决于您客户的网络托管基础设施,以及您的客户使用的 Drupal 版本。但无论如何,您所做的更改都会有三个不同的关注点:

  1. 代码更改

    您需要将您对代码所做的更改部署回服务器。理想情况下,您可能会通过 Git 直接克隆到实时站点或(更好!)作为自动构建过程的一部分。听起来,您可能只需要通过 FTP 备份更改。

    注意不要重新上传修改后的settings.phpsettings.local.php 文件!

  2. 内容变化

    您可能必须在本地测试您的部分/全部内容更改,然后在实时站点上重新创建它们。由于您的客户可能在您工作时对实时站点进行了更改,因此您不能冒险将本地数据库导入实时站点。

  3. 配置更改

    如果可能的话,应在代码中管理对配置的更改(即作为上述1. 代码更改 的一部分)。在 Drupal 7 中,the Features module 通常是完成此任务的最佳方式(这里是 an answer I wrote describing the Features workflow)。 Drupal 8 有the Configuration Manager。请注意,这两个工具都很难很好地使用。

【讨论】:

  • 这非常有用。谢谢!我要试一试,看看会发生什么。此外,事实证明我无法访问客户端服务器的原因是因为他在 IP 地址中遗漏了一个数字。哎呀!在这里,我认为这是我做错了什么。我能够进入 cPanel 并使用他们的工具下载完整的站点备份。从您所说的来看,既然我拥有了所有文件,那么设置本地服务器应该不会太难。谢谢一百万!
【解决方案2】:

您的客户需要授予您对文件的访问权限,以便您可以将它们放入 XAMPP 上的 htdocs,然后您需要数据库(也由客户提供),启动 XAMPP,在 localhost/phpMyAdmin 上创建一个新数据库并导入网站的数据库。在项目代码上转到sites/default/settings 并将数据库设置更改为您的本地设置。然后你可以去localhost/{your-proyect},它应该可以工作。

【讨论】:

  • 太棒了!谢谢!
猜你喜欢
  • 2011-04-16
  • 1970-01-01
  • 1970-01-01
  • 2014-12-23
  • 1970-01-01
  • 2023-02-09
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多