11.8 建立一个开发站点

hrs 提交于 2019/07/14 - 07:48 , 周日

目标

制作可用于开发新功能和测试更新的站点的副本。

必备知识

第11.7节“概念:开发站点”

网站先决条件

  • 您有一个实时的,开发的网站,您希望制作一份用于开发目的的副本。
  • 如果要对此任务中的某些步骤使用Drush,则必须安装Drush。请参见第3.2节“概念:其他工具”

脚步

  1. 按照第3.4节“准备安装”中的步骤进行操作,以便为开发站点设置主机设置,您知道开发站点的Web根目录,并且您的开发站点有一个空的数据库和数据库用户使用。
  2. 从您的实时站点的数据库中创建数据库转储文件。请尝试以下方法之一:

    • 如果您使用MySQL作为数据库,并且您的实时站点的服务器安装了phpMyAdmin(可从许多主机控制面板获得),请使用phpMyAdmin中的Export选项卡以SQL格式导出。 建议在输出文件上使用gzip压缩,以减小文件大小。
    • 如果您使用的是MySQL并且可以访问命令行,请使用此命令(替换您站点的数据库名称,用户名和密码):

      mysqldump -u USERNAME -p'PASSWORD'DATABASENAME> BACKUPFILE.sql

    • 如果您更喜欢使用Drush,请使用以下命令:

      drush sql-dump> BACKUPFILE.sql

    • 在您的实际站点中 使用提供的备份和迁移模块。有关安装提供的模块的说明,请参见第11.3节“从Drupal.org下载和安装模块”

      您现在有一个存储在BACKUPFILE.sql文件中的数据库转储。出于安全考虑,请避免将此文件存储在Drupal站点根目录下的托管服务器上。这将阻止其他人获取您的数据库副本。

  3. 将所有文件从您的实时站点的Web根目录复制到开发站点的Web根目录。您可能希望使用Git来执行此操作; 如果是这样,请参见 第11.11节“使用Git管理文件和配置修订”
  4. 在纯文本编辑器中编辑开发站点顶级目录下 的sites / default / settings.php文件。查找包含数据库名称,数据库用户名和数据库密码的末尾附近的行,并将其更新为有关您设置的开发站点数据库的信息。这些行看起来像这样(在编辑之前):

    $ databases ['default'] ['default'] = array( 'database'=>'live_site_database_name', 'username'=>'live_site_database_username', 'password'=>'live_site_database_password',

  5. 检查您的settings.php文件是否具有以下设置; 如果是,那么您需要编辑它以指向您的开发站点URL而不是您的生产站点URL:

    $设置[ 'trusted_host_patterns']

  6. 将您创建的数据库转储文件导入开发站点的数据库。请尝试以下方法之一:

    • 如果您使用MySQL作为数据库,并且您的实时站点的服务器安装了PHPMyAdmin(可从许多主机控制面板获得),请使用PHPMyAdmin中的Import选项卡。如果数据库很大,您可能会发现必须重新启动导入几次。
    • 如果您正在使用MySQL并且可以访问命令行,请使用此命令(替换您站点的数据库名称,用户名和密码;如果您创建了gzip压缩的备份文件,则还需要先解压缩它):

      mysql -u USERNAME -pPASSWORD DATABASE_NAME <BACKUPFILE.sql

    • 如果您更喜欢使用Drush,请使用以下命令:

      drush sql-query --file = BACKUPFILE.sql

  7. 如果开发和实时站点需要具有不同的配置,则必须在settings.php文件中使用配置覆盖。在 $配置变量将帮助您从标准配置数据单独保存覆盖值。例如,您可能希望站点名称在生产站点上为“Anytown Farmers Market”,但在开发站点上为“Anytown Farmers Market的开发站点”。要做到这一点,您可以在站点配置(在数据库中)和开发站点上的settings.php文件中拥有生产值,您需要具有:

    $ config ['system.site'] ['name'] =“Anytown Farmers Market的开发网站”;

扩大您的理解

影片

 

建立一个开发站点

其他资源

归因

写和编辑珍妮弗·霍奇登, 乔·辛德拉在 Drupalize.Me,并 Jojy阿方索在 红裂纹

标签