
我將 ubuntu 伺服器從 14.04 升級到 16.04。一些軟體包如:
- php
- nginx
- mysql
已更新,我在那裡運行一個小網站,運行良好。我第一次收到 502,該錯誤已被修正,因為 php5 已被刪除,php-fpm 現在是 php7.0-fpm。
然而我現在看到的只是一張空白頁。我查看了 nginx 錯誤日誌,但沒有任何內容表明有錯誤。 php7.0-fpm 日誌中也沒有錯誤。
我新增了一個 test.php 來回顯一個簡單的值,但也顯示了一個空白頁面。看起來 php 沒有被呼叫。
我已經更新了 /etc/php/7.0/fpm/poo.d/www.conf 來監聽: localhost:9000 我網站的 nginx 設定沒有改變。
有什麼想法可能會出問題嗎?
編輯1:
透過 /etc/php7/fpm/pool.d/www.conf 啟用存取日誌,可以看到請求正在傳送到 fpm:
127.0.0.1 - 15/Jan/2017:14:38:53 +0000 "- " 200
127.0.0.1 - 15/Jan/2017:14:39:13 +0000 "- " 200
127.0.0.1 - 15/Jan/2017:14:39:27 +0000 "- " 200
編輯2:
跑步:
php index.php
是否從終端渲染站點。所以這不是php不相容的問題
答案1
發現問題了。不確定以前安裝了哪個版本的 nginx,但我的 /etc/nginx/sites-enabled/wordpress 伺服器中有以下內容:
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass localhost:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_read_timeout 300;
fastcgi_buffer_size 128k;
fastcgi_buffers 256 16k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
}
並改為:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php7.0-cgi alone:
fastcgi_pass 127.0.0.1:9000;
}
WordPress 現在正在渲染