每一個國內WordPress網站站長都會碰到的問題,在某個時候,主題、某個插件,甚至WordPress本身更新出錯,因為眾所周知的原因。

我的客戶裡有30%左右將網站置於國內阿里雲服務器上,這是一個我需要反复解決的問題。

我還沒有找到100%可靠的方法,只能說下面的這個方案“足夠”可靠。方法很簡單:

第一步:WP站點服務器與國外某台服務器間建立穩定的隧道(自動斷線重連),目前來看autossh是簡單有效的選擇:

# 在網站服務器與國外服務器之間建立SSH動態隧道autossh -D 12345 -f -C -q -N [email protected]

命令參數請讀者自行查詢吧。

習慣CentOS的朋友請注意,如果你發現autossh安裝後上述代碼無法正常執行,請查看一下你的ssh版本,有可能是因為ssh版本太老了。

第二步:配置wp-config.php,讓WordPress後台流量走這個隧道

# 在wp-config.php中為WordPress配置代理define( 'WP_PROXY_HOST', 'socks5://127.0.0.1' ); define( 'WP_PROXY_PORT', '12345' );

這是參考文檔

這個方法能比較好地保障WordPress更新順利,缺點是有可能拖慢後台,這取決於你選擇的中間服務器的質量,關於中間服務器的選擇,這裡不便展開討論。

為了盡可能避免非必要情況下過代理,讀者可以自行為為上述配置添加限制條件,如:

# 只在偵測到特定Cookie值時才啟用代理if ( $_COOKIE['useproxy'] == 'yes' ) { define( 'WP_PROXY_HOST', 'socks5://127.0.0.1' ); define( 'WP_PROXY_PORT' , '12345' ); }

你應該能找到適合自己的條件設置方式。

並非所有的主題、插件都遵循WP_PROXY_HOST和WP_PROXY_PORT的代理設置,但這種情況很少見,除非你安裝了代碼極不規範的組件,碰到這樣的情況,最好的選擇是更換代碼規範的組件。

autossh比反复手動重啟ssh好很多,但它仍不是100%可靠的,所以讀者不妨配合腳本對autossh進程本身進行管理,個人經驗,這並非必要,這裡就不展開了。

另:國內WP站極端后台加速法

發現錯別字麻煩選中按Ctrl+Enter

文章更新時給我發郵件

類似帖子

3 Comments
內聯反饋
查看所有評論
cpbabyblue
7 月前

學會了使用小貓咪把wpshushu.com添加到直接用proxy訪問,速度快多了…
不同代理,打開會比較慢。

靈風子
8 月前

如果境外節點使用阿里雲,不允許作為proxy,曾經被警告過。
我自己的站點也都是離岸部署。
我想到的一種辦法是,借助git在兩地同步代碼,但是沒有具體實施。

這是一溝絕望的死水,清風吹不起半點漪淪。 —聞一多