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 Engine(完全跳過本地),使用 WP Engine 自動遷移插件可以輕鬆實現這一目標。
使用 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 進行部署是自動化程度最高的,只需一鍵推送。
準備好嘗試了嗎? 免費下載本地!