如何将 Drupal 站点克隆到另一个域

什么是 Drupal?

Drupal 是许多网站和应用程序每天都在使用的开源内容管理软件。 Drupal 的一些重要特性包括创作内容、性能和安全性。

可能需要对您的现场制作站点进行更改。 无论是更新模块还是您的 drupal 版本,最好将您的 drupal 站点克隆到开发站点并在开发站点上进行更改。 本文将向您展示如何将 Drupal 站点移动或克隆到另一个域。

要求

数据库转储和导入

用户需要能够使用 PhpMyAdmin、Mysqldump 或 Drush 创建 mysql 数据库转储。 选择的方法决定了如何将数据库备份导入到新数据库中。

复制文件

用户需要将文件从实时 Drupal 项目复制到新的 Drupal 项目。 本教程使用 rsync 命令。 如果您不熟悉 rsync 命令实用程序,本文提供了使用 rsync 的提示和基本知识。

SSH

用户需要能够使用 SSH 连接到他们的服务器。

如何将 Drupal 站点克隆到另一个域

本教程涉及克隆 https://growblop.comhttps://staging.growblop.com. 在适当的地方使用您的域。

第 1 步:转储数据库

制作数据库备份转储有三种不同的方法。 选择哪一种取决于您的喜好。 选择最适合您的一种。

在 PhpMyAdmin 中使用导出功能转储数据库

使用 PhpMyAdmin,您将单击数据库名称。 接下来,您将在顶部菜单上看到按钮。 点击 出口 按钮。 对于导出方法,选择 快的. 然后点击 按钮并选择 Save 将备份保存到本地计算机。

使用 mysqldump 命令转储数据库

对于这种方法,您需要使用 SSH 连接到服务器。 首先,使用 cd 命令从 Linux 终端将目录更改为实时 Drupal 项目的位置。 在本教程中,Drupal 项目的位置是 /home/growblop/public_html。

更改到 Drupal 项目位置后,发出 mysqldump 命令进行数据库转储。 转储文件的位置将是 /home/growblop/public_html/drup177_cloning.sql。

cd /home/growblop/public_html
mysqldump  drup177 > /home/growblop/public_html/drup177_cloning.sql

使用 drush 转储数据库

第三种方法是一个强大的实用程序,称为 drush。 Save 转储文件到 Drupal 项目位置之外的位置。 这 example 使用 drush 进行数据库转储并将其存储在 /home/growblop/drup177.drushcloning.sql 中。

cd /home/growblop/public_html/
drush sql:dump --result-file=../drup177.drushcloning.sql

第 2 步:复制文件

将 Drupal 项目的文件同步到新的 Drupal 域。 首选方法是使用 rsync 命令。 使用 example 域,它将文件从 /home/growblop/public_html 复制到 /home/growblop/staging.growblop.com。

cd /home/
rsync -avH /home/growblop/public_html/ /home/growblop/staging.growblop.com/

第 3 步:创建新数据库

您需要为克隆的 Drupal 站点创建一个新数据库。 如果您使用 cPanel,请单击 MySQL 数据库 从主页的数据库部分。 然后,创建新数据库、数据库用户名和密码。

创建后,确保新数据库用户具有完全权限。 在下面选择数据库用户和名称 将用户添加到数据库 部分,然后单击 添加 按钮。 点击 所有特权 复选框。

第 4 步:在 settings.php 文件中设置新的数据库和域详细信息

现在新数据库、用户和密码已经设置好了,用克隆站点的新数据库设置替换实时 Drupal 数据库设置。 接下来,使用文本编辑器打开克隆站点的 settings.php 文件,并将旧的数据库连接详细信息替换为新的。

cd /home/growblop/staging.growblop.com
nano sites/default/settings.php

将该文件中的以下数据库详细信息更改为新的数据库、用户和密码。 这是一个 example 那个过程。

$databases['default']['default'] = array (
  'database' => 'drup177',
  'username' => 'drup177',
  'password' => '$password',
  'prefix' => 'dr40_',
  'host' => 'localhost',
  'port' => '3306',

您可以在 settings.php 文件中设置实时站点的域名。 将此设置更改为新克隆站点的域名。 在 settings.php 文件的 $settings[‘trusted_host_patterns’] 部分,将现有 URL 更改为新 URL。

步骤 5. 将转储导入新数据库

现在数据库已备份到转储文件并同步到克隆站点的文件位置,请导入数据库转储。 导入数据库使用与进行转储相同的方法。 根据您创建数据库转储的方式使用以下方法之一。

使用 PhpMyAdmin 导入数据库转储

您可以通过 PhpMyAdmin 导入数据库转储。 首先,单击新的数据库名称。 然后你点击 进口 出现在顶部菜单上的按钮。 接下来,选择您导出到本地计算机的数据库转储文件,然后单击 按钮。

使用 Mysql 命令行导入数据库转储

使用以下命令导入从 mysqldump 命令生成的数据库转储。

mysql drup338 < /home/growblop/public_html/drup177_cloning.sql

使用 drush 导入数据库转储

如果您使用 drush 进行数据库备份,请使用以下命令将其导入。

cd /home/growblop/staging.growblop.com/
drush sql:query --file=/home/growblop/drup177.drushcloning.sql

结论

您现在已将您的实时生产 Drupal 站点克隆到另一个暂存域。 您可以按照本教程在浏览器上访问新克隆的 Drupal 站点。 此外,一些很棒的 Drupal 技巧将使您的 Drupal 站点受益匪浅。

Liquid Web 提供专用服务器选项,非常适合您的下一个 Drupal 网站。 联系我们的销售团队讨论您的需求并开始使用。