DE{CODE}:使用本地站点部署的最佳实践
已发表: 2023-02-12虽然让网站上线的方法没有错,但本次会议将介绍将网站从本地环境部署到生产环境的各种选项。 加入独立讲师和 Web 开发人员 Carrie Dills,她将介绍一些本地工作流工具,并介绍为什么您可能会根据您的团队、工作流和站点详细信息选择一种部署方法而不是另一种部署方法!
会议幻灯片
全文抄本
凯莉·迪尔斯:你好。 欢迎使用 Local 站点部署最佳实践。 因此,作为一名专业的 Web 开发人员,您已经熟悉在本地计算机上开发站点然后将它们部署到实时服务器与实际在实时服务器上进行开发的想法。 在设置本地开发环境时,有很多选择。 你有 MAMP 或 WAMP 或 XAMPP 或 DesktopServer。
为此,您可以使用许多不同的工具。 我个人最喜欢的是 LocalWP。 这是免费送货——对不起。 它称为 Local,但可在 localwp.com 上获得。 它是一个免费的开发工具。 它真的很容易设置,除了作为本地站点开发的地方之外,它还有一些用于部署站点生活的选项。 但对于您的工作流程,它还有很多其他好处,例如路由 SSH 访问、WPCLI、一些内置的缓存破坏,甚至像一键式 SSL。
所以如果你已经有了这个,那么你就可以开始了。 如果没有,那没关系。 因此,在我们甚至讨论进行部署的方法之前,让我们备份总线并讨论在迁移 WordPress 站点时实际涉及的内容。 因此,将其视为两件事。 你有你的文件,你有你的数据库。 当我们谈论迁移站点时,我们只是在谈论将这两件事转移到目标服务器上。 知道了?
好的。 因此,如果您破解打开 WordPress 安装或者重新下载 WordPress 并打开它,您会看到三个主要文件——或者对不起,文件夹、WP Admin、WP Includes 和 WP Content,以及一些该根目录中的文件。 现在为了迁移的目的,假设您的目标服务器已经安装了 WordPress,您只关心 WP Contents 文件夹。 所以这将保存您的主题、插件以及您通过 WordPress 管理员完成的任何上传。 如果您已上传媒体文件,它们也将实际包含在该 WP Content 文件夹中。
所以考虑到这一点,我们有文件,我们有数据库。 让我们检查一下实际推进迁移的选项。 好的。 如果你愿意和我一起乘坐你的时间机器,我相信无论你在哪里看这个,你都坐在旁边。 继续,跳上那台时光机,我们将回到所谓的 FTP 或文件传输协议。 我在问你——我在敦促你,请永远不要使用 FT——
[笑声]
–FTP。 如果必须,至少使用 SFTP 或安全文件传输协议,这会在文件移动过程中增加一层安全性。 或者您可能与具有 cPanel 的主机一起使用,其功能有点相同。 它是一个文件浏览器,您可以在本地服务器和实时服务器之间来回移动文件。 这是为了处理文件。 你就像,等等,嘉莉。 我记得你刚才说你也有一个数据库要移动。 感谢你记得这一点。
因此,当涉及到数据库时,如果您不习惯使用 MySQL 数据库,这可能会让人感到有点害怕。 而且,基本上,该过程是将本地数据库导出为 gzip 文件。 您将下载它,然后在您的生产服务器上的数据库管理器中,您将导入该数据库。
[尖叫声]
它有效,有效。 它完成了工作。 但是您可能需要使用 Better Search and Replace 之类的插件,将所有这些开发 URL 替换为您的实时 URL。 所以请记住这一点。
接下来,我们有迁移插件。 我们已经正式进入未来,并正在寻找更简单的方法将网站从本地转移到实时。 因此,当涉及到迁移插件时,WordPress 插件存储库中有大量此类插件。 我最喜欢的一些,All-In-One Migration、Duplicater 和 WP Migrate DB。
现在说到这些,它们将为您提供不同类型的帮助。 因此,与我们使用 cPanel 或 SFTP 看到的完全手动过程相比。 这些将做一些很好的事情,比如当它准备好你的数据库时,它会继续帮助你处理那个 URL——本地到实时 URL 交换。 它会为你打包文件,但你仍然需要在接收端对这些文件做一些事情。 这些插件中的每一个都以稍微不同的方式运行,但它们将帮助您完成本地化的过程。
现在,如果我没有提到我最喜欢的插件 Migrate DB Pro,那我就失职了。 这是由 Brad Touesnard 和他在 Delicious Brains 的团队创建的。 而这个插件的作用,其实就是一个批发部署插件。 因此,它将获取您的文件和数据库,让您真正了解要移动的表,然后将它们推送到您的实时环境。 现在因为它是一个了不起的工具,它确实如此——你必须掏出你的钱包才能使用它。 但它可以节省大量时间。
但是你可能在想,嘉莉,我以为我们在谈论本地。 我们正在谈论本地。 我们过去不得不备份,查看迁移过程涉及的内容,然后对迁移站点的方法有一些想法。 现在 WP Migrate DB Pro 是惊人的。 但是当涉及到 Local 时,您还可以获得本地开发环境。 但是等等,还有更多。 你会得到一个叫做 Local Connect 和 Magic Sync 的东西,这是一种从本地到现场进行一键式部署的能力。 如果您想拉动,它实际上也可以让您转向另一个方向。 但我们正专注于为此进行部署。
相处中唯一的障碍是 Local Connect 与两个网络主机一起工作,Flywheel 和 WP Engine。 现在我知道你们中的很多人可能已经有了这些帐户。 棒极了。 如果您不这样做,请不要害怕,有几种免费方法可以尝试这些方法。
所以 Flywheel,你可以创建一个新的演示站点,启动它,用它来玩 Local Connect。 然后,类似地,使用 WP Engine,您可以创建一个免费的合作伙伴计划帐户,该帐户附带一个可以与 Local 连接的站点。
好的。 你们都准备好进行演示了吗? 我听到了一个响亮的肯定。 所以我要继续进行演示。 当然,可能会出什么问题?
[轻笑]
好的。 因此,当涉及到部署过程时,您必须要有一个要部署到的站点。 所以我在我的 WP Engine 帐户区域。 我正在创建一个本地站点,我说这是一个暂存环境。 我们将继续并添加它。 现在回到 Local,首先,我需要将 Local 连接到我的主机,在本例中是 WP Engine。
我要登录,它给了我一些链接。 我要去访问这个顶部链接。 这会让我回到我的 WP Engine 帐户,在那里我可以生成我的凭据。 所以这给了我一个 API 用户名和密码。 让我继续复制它,转到本地,粘贴它,然后对密码执行相同的操作。 现在我们正在连接到 WP Engine。 您在这里看到的是我在 WP Engine 上托管的所有网站的列表,这些网站现在可供我和本地使用。 请注意,我可以将这些直接拉到本地。 但是,我们在这里再次谈论另一个方向。
好的,到目前为止你和我在一起了吗? 我们已经在我们的主机上创建了一个站点,我们将把本地站点发送到该站点,我们还将本地工具连接到 WP Engine。 好的,继续前进。 现在是时候实际查看我在本地开发的网站了,它非常无聊,但我只想让您看看它是什么,以便我们在将它发送到上游时有上下文。
所以首先,我要将这个特定站点连接到 WP Engine。 然后单击一下,boop。 它只会说您想将其发送到哪个站点,我将选择我刚刚创建的本地演示站点。 您还可以直接推动暂存、生产或开发。 现在在这种情况下,我正在做分期。 您可以选择包括是否要一起发送数据库。 这是专业提示。 当我在本地开发时,有时我会变得非常懒惰并使用糟糕的用户名和密码。 请记住,当您将其推送到实时服务器时,您希望确保您使用的是安全的用户名和密码,即使这不是您的生产环境。
好的。 所以我们已经开始推动的过程。 这涉及上传文件。 我们谈到了移动文件
然后我们将去上传那个数据库,因为我们在我们的选项中选择了数据库。 它一定在大数据库中。
[笑声]
现在它正在执行我们提到的 URL 搜索和替换,它正在检查数据库表前缀以确保它是本地和实时之间的匹配。 因此,通过该部署过程,我什至可以在屏幕底部看到自上次部署以来的时间。 因此,让我们回到我的 WP Engine 帐户。 我要去打开我刚刚推送的那个网站。 如果我们访问它,您会看到它是我们刚刚拥有的本地网站。 再一次,它不是什么特别的东西,但就是这样。 只是为了向您展示 URL 情况,您可以看到它确实更新了实时 URL。 太酷了。
好的。 还在我这儿? 回顾一下,到目前为止,我们已经使用了一个实时站点——或者对不起,我们在本地开发的一个本地站点。 我们已经在目标服务器上创建了一个站点。 我们已将本地连接到我们的 WP Engine 帐户,并将特定站点连接到 WP Engine。 然后,瞧,按一下按钮,它就完成了所有事情。 它正在替换 URL。 它正在破坏缓存。 它还会在此过程中进行备份,以防出现任何问题。 因此,使用本地部署是——非常简单。 我第一次看到它,我被卖了。
现在,以防你没有留下适当的印象——我希望你是。 但如果您不是,现在我想向您介绍一种叫做 MagicSync 的东西。 现在 MagicSync 是一个查看器,您可以在其中看到一个双窗格窗口,您可以在其中查看本地站点上的文件并将它们与目标站点上的文件进行比较,并真正具体说明您要部署哪些文件。 让我们来看看。
好的。 所以我回到了本地。 如果我转到“本地首选项”,我可以为 MagicSync 切换一个按钮。 然后打开它,然后继续申请。 好的,现在我需要创建或添加一些东西到我现有的本地站点,以便我可以向您展示 MagicSync 的工作原理。 我将通过在我的本地 WordPress 安装中添加一个主题来做到这一点。 我们将在 2021 年继续。
没关系。 再一次,只是向您展示一个如何工作的例子。 所以不需要激活。 所以回到 Local,我将再次单击 Push。 这一次,您会注意到——哇,就是那个 MagicSync 窗口。 如果我们向下滚动,就会看到 2021 年的主题。 我们可以看到它存在于本地文件目录中,如果我们推送它,它就会被添加到远程环境中。
我们还可以看到如果我们推送它会被删除的东西,这意味着该文件同时存在于本地和远程。 因此,使用 MagicSync,您可以再次非常精细地了解要推送哪些文件。 现在您不必使用 MagicSync。 您可以对所有内容进行批发推送,这是一种方法。 与使用 MagicSync 仅通过您指定的文件发送文件相比,它只需要稍微长一点的时间。
所以回到 WP 引擎。 让我们看看直播现场。 如果我去主题,我可以看到它。 2021 年的主题就在那里。 这太酷了。 好的,这就是 MagicSync 的工作原理。 因此,再次重申,您可以将 MagicSync 作为部署过程的一部分使用,或者只坚持使用本地推送,这样就可以了——效果也很好。 所以我希望您喜欢看到这样做是多么容易。
现在,如果您在执行任何这些操作时遇到问题,Local 有一个非常棒的社区支持论坛。 他们超级活跃。 所以如果你提出问题,你会在那里得到答案。 并向 Clay Griffith 大声喊叫,他实际上是 Local 的原创者。 他也是——你也会在论坛上看到他。
现在,如果您是 WP Engine 或 Flywheel 的付费客户,您实际上可以获得对 Local 和 Local Connect 的专门支持,这真的非常棒。 我从经验中知道,这两位主持人都有出色的支持团队。
好的,让我们回顾一下。 说到迁移,第一个选择是什么? 正确,SFTP 或 cPanel 以及手动数据库迁移。 所以你要导出它,然后你必须导入它。 所以这将是进行部署的最手动方式。 接下来,我们有迁移插件,然后是一些数据库助手,可以执行搜索和替换 URL 之类的事情,可以检查我们的 WordPress 数据库表前缀。
所以它更好——比旧的 SFTP 模型改进了很多,但它仍然不是 100% 一次单击按钮。 当然,最后一个,Local Connect 和 MagicSync 将您的文件和数据库上传到服务器,我敢打赌您可以分辨出我最喜欢哪个工具。
因此,如果您想继续并开始使用,我很乐意邀请您从 localwp.com 下载 Local(如果您还没有下载 Local Connect)并且 Local Connect 是一项完全免费的功能。 请记住,它仅适用于 Flywheel 或 WP Engine。 有几种方法可以尝试其中任何一个主机,只是试用一下 Connect 并感受一下它的运行情况。
好的。 因此,我非常感谢您的时间和关注,并祝您部署愉快。