WordPress 本地:站点迁移和部署指南
已发表: 2022-05-05在本地机器上开发网站是专业 WordPress 开发的实际方法。
有很多方法可以设置本地 WordPress 开发环境,如果您使用过 Local,您就会知道启动 WordPress 安装是多么简单。
然而,看起来并不那么简单的是如何部署您使用 Local 开发的站点。 最好的方法是什么?
这就是我们在本文中讨论的内容。 具体来说,我们将介绍:
请注意,本文将互换使用术语“部署”和“迁移”。 此外,当提到您网站的本地实例时,它也可能被称为“来源”。 同样,当提到目标站点时,它可能被称为“远程”、“实时”或“生产”。
剧透警告:将本地连接与 WP 引擎和飞轮一起使用是最简单的方法。 但是,无论您选择哪种方法,我们都会引导您完成整个过程并解决一些常见的障碍。
站点迁移 101:任何迁移所需的内容
WordPress 由文件和数据库组成,所以当我们谈论迁移网站时,我们专门谈论的是移动这两件事。
如果您下载 WordPress 或查看现有 WordPress 安装的文件结构,您会在根目录中找到三个文件夹和一些文件:
- 根
-- /wp-包括
-- /wp-管理员
-- /wp-内容
根目录中的其中一个文件对这次对话特别重要,那就是wp-config.php 。 我们稍后会提到。 同样重要的是要指出/wp-content文件夹是主题和插件文件所在的位置。
将站点移动到已安装 WordPress 的主机时,您需要移动的唯一文件夹是/wp-content 。
通过 Sftp 或 cPanel 从本地手动部署您的站点
如果您的目标站点使用支持 cPanel 和/或 SFTP 的主机,则以这种方式迁移站点文件的进入门槛相对较低。 (对于数据库来说不是那么容易,但我们稍后会到达那里)。
cPanel 文件管理器是一种可用于在远程服务器上上传、移动和删除文件的方法。 您也可以使用 FileZilla 等 SFTP 客户端(适用于任何操作系统)将文件从本地计算机传输到远程服务器。 如果您不熟悉 SFTP,这里有一个入门指南。
设置好文件传输方法后,您需要了解如何部署使用 Local 创建的站点。
1.移动站点文件
您的本地站点文件位于您的计算机上的本地站点 > yoursitename > app > public。
从那里,使用 cPanel 文件管理器或 SFTP 将/wp-content移动到远程安装的根目录。
2.导出本地站点数据库
默认情况下,Local 使用Adminer 进行数据库管理。 要访问本地站点的数据库:
- 启动本地
- 对于您想要的任何站点的数据库,单击开始站点
- 单击数据库选项卡
- 点击Adminer打开数据库UI
- 单击导出以准备数据库导出
- 保持默认选项不变,除了将输出更改为gzip
这是显示上述步骤的视频。
3. 在远程服务器上导入站点数据库
从您的网络主机中,您需要找到您的数据库管理器。 您的主机很有可能正在使用 phpMyAdmin,但如果不是,请查找数据库选项。
打开数据库管理器后,记下已经存在的 WordPress 表名。 它们可能以wp_前缀开头。
在导入数据库之前,您需要删除现有的数据库表。 这是一个教程,概述了如何导入 WordPress 数据库的过程。
需要注意的几个注意事项:
- 您要导入的数据库的表前缀需要与远程服务器的wp-config.php文件中指定的表前缀匹配。
- 您将需要使用诸如 Better Search Replace 之类的插件来使用您的主机 URL 进行开发 URL 的通用查找/替换。
通过 SFTP 部署的优缺点
在我们从 SFTP 方法继续之前,让我们强调一些优点和缺点。
优点:
- 用于移动文件和文件夹的熟悉的文件浏览器界面
- 对单个文件和文件夹的精细控制
缺点:
- 将文件移动到错误的文件夹很容易
- 没有版本控制
- 如果您不小心覆盖了文件(或文件夹),它就会消失(尽管您可以从备份中恢复,如果有的话)
- 没有自动化 - 您手动将文件/文件夹从源服务器移动到目标
- 您必须手动导出和导入数据库
- 您可能需要更新远程服务器的wp-config.php中的数据库表前缀
- 没有与远程服务器“同步”本地更改的概念(反之亦然)
使用迁移插件从本地部署您的站点
使用迁移插件部署站点通常比 cPanel 迁移更加用户友好。
从鸟瞰的角度来看,该过程类似于将文件和数据库从本地计算机移动到远程服务器,但这种方法涉及更多的自动化。
有多个插件可用于处理此类部署,其中一些最受欢迎的选项是 All-in-One WP Migration、WP Migrate DB 和 Duplicator。
All-in-One WP Migration 是最精简的备份和迁移插件之一,专为非技术用户设计。 我们将在将站点从本地部署到网络主机的示例中使用它。
以下是您为此类迁移采取的步骤。
1. 在您的本地站点和生产站点上安装插件
您将使用 All-in-One WP Migration 插件来导出本地站点和导入目标站点。
2.添加查找/替换规则(可选)
如果您想将本地 URL 更改为远程服务器 URL(或数据库中的任何其他查找/替换操作),您可以在导出站点之前执行此操作。
3.设置高级选项(可选)
All-in-One WP Migration 还使您能够挑选一些将(或不会)包含在您的导出中的选项。 例如,其中一些选项包括:
- 不导出垃圾评论或发布修订
- 不导出媒体库、主题或插件
- 根本不导出数据库
4.创建导出文件
在您的实时站点的管理员中,转到一体化 WP 迁移 > 导出并创建站点的副本(文件和数据库)。 使用免费版本,您可以将网站导出到文件。 如果您想直接导出到第三方服务(例如 Google Drive 或 Dropbox),则需要购买扩展程序。
5.在直播站点上导入站点副本
从您的实时站点的管理员中,转到一体化 WP 迁移 > 导入并拖放您导出的文件。 请注意,免费版本仅限于 300MB 或更少的文件。
通过 All-in-One WP Migration 插件部署的利弊
在我们继续使用迁移插件之前,让我们强调一些优点和缺点。
优点:
- 适用于所有托管服务提供商
- 包括在迁移过程中使用实时 URL 查找/替换开发 URL 的功能
- 非常适合小型网站
- 非常适合创建站点备份
缺点:
- 对于额外的导出选项或大于 300MB 的网站,您需要付费
- 虽然比使用 SFTP 和数据库管理器更简单,但该过程并非完全自动化
- 您可能仍需要使用目标站点上的插件,例如 Better Search and Replace 来替换存储为序列化数据的 URL
- 如果图像未出现在您的媒体库中,您可能需要使用诸如 Regenerate Thumbnails 之类的插件
- 对于具有较大数据库的较大站点,在创建站点副本时可能会遇到服务器超时
使用 WP 引擎和飞轮通过本地连接进行部署
好的,我们把最好的和最简单的留到最后! 虽然我们肯定有偏见,但通过 Local Connect 部署站点确实是一件轻而易举的事。
在撰写本文时,Local Connect 仅支持托管在 WP Engine 或 Flywheel 上的站点,因此如果您想部署到另一台主机,则需要使用前面讨论的方法之一。
1.登录主机
在本地,单击连接图标以访问我的主机选项,您可以在其中登录 WP Engine 和/或飞轮。
连接后,您可以查看连接到主机帐户的所有站点。 您可以将现有站点(和特定环境)拉到本地。 这不是我们在本文中要介绍的内容,但它是利用现有 Flywheel 或 WP Engine 站点和环境并一键将站点导入本地的好方法。
2.连接本地站点到主机
登录主机后,您可以将要迁移的本地站点连接到要部署到的主机(Flywheel 或 WP 引擎)。
3. 一键推送部署
站点连接到主机后,您可以单击 PUSH 按钮开始推送过程。 如果这是您第一次推送此站点,则需要选择要推送到的现有站点以及要覆盖的站点环境。
之后,您以后每次单击 PUSH 按钮时,站点都会根据您之前的选择自动推送到远程服务器。
4.就是这样!
你希望有更多的步骤吗? 太糟糕了,你已经完成了! 在 WP Engine 或 Flywheel 上查看您的本地站点!
这是显示上述步骤的视频。
[插入视频]
通过 Local Connect 部署的优缺点
优点:
- 一键部署启动完全自动化,将站点从本地迁移到 WP 引擎或飞轮
- 使用 MagicSync 定制您要推送的文件和文件夹,帮助您防止意外覆盖
- 除了 MagicSync 允许您准确控制部署的内容之外,使用 Connect 还可以为您的部署过程提供更多帮助:
- 缓存清除:我们将在您启动更改时清除您网站的缓存。
- 备份:当您推送更改时,我们每两小时备份一次您的网站。
- 安全性:与 FTP(直接连接到您的站点)不同,MagicSync 在部署之前通过单独的微服务进行路由。
缺点:
- 由 WP Engine 和 Flywheel 以外的提供商托管的站点无法使用 Local Connect。
准备好,设置,部署!
在将站点从本地服务器移动到目标服务器时,您有很多选择,我们在上面概述了其中的一小部分。
在自动化方面,SFTP 和数据库管理器是自动化程度最低的部署方式,使用迁移插件可为您提供更多自动化,通过 Local Connect 进行部署是自动化程度最高的,只需一键推送。
准备好尝试了吗? 免费下载本地!