實用技巧

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

最近一台一台主機陸續更新跟進新版 Plesk,為得就是將所有客戶網站更新 PHP 版本至 7.3

更新完後開始陸續有客戶反應在操作 WordPress 後,發現有跳 Error 502 bad Gateway 之問題,原以為是 Cloudflare CDN 造成的

後來仔細檢查後,問題是出在更新後的 Nginx 之設定檔 Nginx.conf 資料少了緩衝區資料設定

解法有兩種,我各別在這筆記以免自己再度遇到又忘掉,或許能幫上一些人

這問題似乎常發生在使用 PHP 7.3 的 WordPress 上面

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

【解決方式一】適用於 Plesk 主控後臺沒辦法使用 SSH 的人

檢查 FTP 上的 錯誤日誌 proxy_error_log 有出現類似以下錯誤:

[error] 14790#0: *188 upstream sent too big header while reading response header from upstream, client: 203.0.113.2, server: subdomain.example.com, request: “POST /admin_catalog.php HTTP/1.1”, upstream: “http://10.0.0.1:7080/admin_catalog.php”, host: “subdomain.example.com”, referrer: “http://subdomain.example.com/admin_catalog.php”

進到 Plesk 後臺,找到有問題的網站,找到 PHP 設定 > 看是使用那一種 PHP 運行版本,若為 fastcgi ,往下找到 其他指令 > 貼上以下程式碼

fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

找到 Apache 與 nginx 設定 > 往下找到 其他 Nginx 指令 > 貼上以下程式碼

proxy_buffers 8 16k;
proxy_buffer_size 32k;

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

【解決方式二】適用使用 SSH 可全域宣告

連線進 SSH,並輸入 sudo su 取得權限,再輸入 vi /etc/nginx/nginx.conf 進行編輯

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

找到 http { 這段程式碼宣告處:

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

然後在 } 之前的底部位置插入以下程式碼(記得按 Instert 鍵):

proxy_buffers 8 16k;
proxy_buffer_size 32k;
fastcgi_buffers 8 16k;
fastcgi_buffer_size 32k;

就會像下圖這樣:

Plesk 更新 Obsidian 後 WordPress 更新編輯動作錯誤 502 修復方式

完成後按一下 ESC 鍵,輸入 :wq 儲存離開

最後請輸入 service nginx restart 重新啟動即可