問題描述
快速背景:
我們有一個 WordPress 實例,啓用了 Multisite,託管了三個單獨的博客。 (blog.example.com/blog1,blog.example.com/blog2,blog.example.com/blog3) 。
該多站點將通過四個服務器的 Web 層進行負載平衡,所有這些服務器都訪問同一個數據庫。我明白,blogs.dir 需要在 Web 層上同步,因此無論客户端訪問哪個服務器,都可以使用媒體。
題:
我可以使用第五個 Web 服務器 (即 post.example.com),其唯一目的是使編輯者能夠登錄和發佈新內容嗎?這樣,負載平衡的服務器只是 post.example.com 上傳的內容的接收者。
我知道同步部分是可能的,但我不知道如何設置 WordPress 可以從兩個不同的 sub-domains 訪問。那可能嗎?
編輯:我應該添加一個額外的目標,通過這樣設置,我們希望通過阻止訪問/wp-admin/在 Web 層上獲得一些安全性,所以你只能從一個 Web 服務器 (post) 登錄,但當然這一切都取決於上述問題。 🙂
模擬下面:
最佳解決方案
是的,這是可能的,一些新聞和媒體機構在 WordPress 中使用類似的方法。
你的編輯過程是什麼?最重要的一步是理解您的編輯過程,以及在使用內容之前需要多少控制。 – 例如,考慮這 3 點:1. 您是否需要圖像的第三方批准? 2. 您或您的客户在發佈內容之前是否必須使用 sign-off 複製/圖像/視頻/佈局? 3. 編輯們可以在不同的星期或問題上工作,並計劃內容提前幾周前上線嗎?
如果您對其中任何一個回答 「是」,則您的 Pre-Live /分段服務器和 Live 服務器之間共享的單個數據庫不是’possible’ 。你為什麼問?因為一個新的帖子必須在 non-users 或您不想登錄的第三方看到之前發佈。 (BTW … 任何可能的時間,金錢和技能可以自定義用户角色和訪問級別) 。
所以回到 WordPress 可擴展解決方案
DOMAIN A(您的客户和訪客訪問者) 將需要指向 HTTP 負載平衡器。
負載均衡器將客户流量引導到多個 Web 服務器之一。這些從屬服務器使用 MASTER 服務器保存在 LSYNC 中。
理想情況下,應該有 2 個獨立的 DB 服務器 (用於負載平衡讀/寫請求和比例) 。您可以期待來自訪問者的大量閲讀流量,但您希望確保來自新帖子等的 WRITE 流量不會中斷您的 READ 請求。
DOMAIN A 也可以指向一個配置為 1 的 HTTPS 負載平衡器。只允許來自您的 Office IP 地址的流量和 2. FORCE SSL 連接用於管理/登錄。
這是對 wp-config.php 文件的簡單更改。
這裏是我們構建的 (有一些來自 Rackspace 的支持)
HyperDB 最後我們得到了 HyperDB 設置來管理多個 DB 服務器和請求。這也很容易,因為它主要是具有長配置腳本的插件。
W3TC W3 總緩存我們還有 HyperDB 和 W3TC 設置。這也佔用了大量的 DB 服務器
我們使用 W3TC 的主要原因是將所有靜態內容加載到 Rackspace 。 W3TC 的內容傳送網絡設置也很簡單:)
參考文獻
注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。

