phpMyAdmin 在 RHEL 6 上的 nginx 和 php-fpm 上遇到問題
我們在Red Hat Linux 6 (RHEL) 上使用 nginx 和 php-fpm 設置了 Web 伺服器。這台機器已經安裝了 WordPress,而且執行良好。我們設置了 WordPress 去wptest.domain.local。然後,我們在啟用了站點的名為servername.domain.local中創建了一個新站點,我們希望在其中託管各種工具。
PHP 在整個過程中執行良好,我們對 WordPress 沒有任何問題。但是當嘗試訪問 phpMyAdmin 時,我們會收到此錯誤:
2012/09/14 16:22:13 [error] 10065#0: *1 recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 192.168.1.15, server: servername, request: "GET /phpmyadmin/setup/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "servername"
這是我們網站的配置:
server_name servername servername.domain.local; access_log /srv/www/severname/logs/access.log; 錯誤日誌/srv/www/severname/logs/error.log; 根 /srv/www/severname/public_html; 地點 / { 索引 index.html index.htm index.php; try_files $uri $uri/ /index.php?q=$uri&$args; } 位置 = /favicon.ico { log_not_found 關閉; access_log 關閉; } 位置 = /robots.txt { 允許全部; log_not_found 關閉; access_log 關閉; } 位置 ~ \.php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; 包括/etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /srv/www/severname/public_html$fastcgi_script_name; }
PHPmyadmin 安裝在
/srv/www/servername/public_html/phpmyadmin/
.昨天我注意到它說 phpMyAdmin 也有一些 SEGFAULT 錯誤。
如果我在這個目錄中放一個phpinfo文件,它工作正常。phpMyAdmin 中包含的phpinfo(有一個包含等)不起作用。
瀏覽器顯示502 Bad Gateway。
此外,通常在 php-fpm 重新啟動後,我會看到一個紅色框顯示phpmyadmin -error,然後***無法啟動會話而不會出現錯誤,請檢查 PHP 和/或 Web 伺服器日誌文件中給出的錯誤並正確配置 PHP 安裝。***我嘗試啟用 PHP 日誌記錄,但我一無所獲。
如果我去phpmyadmin/setup ,我確實會在我的站點錯誤日誌中得到這個:
2012/09/18 08:12:43 [error] 16722#0: *22 FastCGI sent in stderr: "PHP message: PHP Warning: Unknown: open(/var/lib/php/session/sess_5d9vhk4jv1f07v2jsltlnp8tdnp7s167, O_RDWR) failed: Permission denied (13) in Unknown on line 0 PHP message: PHP Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/lib/php/session) in Unknown on line 0" while reading upstream, client: 192.168.1.11, server: servername, request: "GET /phpmyadmin/setup/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "servername"
從您發布的最新錯誤來看,PHP 似乎正試圖將會話數據寫入磁碟中一個實際上不可寫的目錄中,即
/var/lib/php/session
.檢查此目錄的所有權和權限:
ls -ld /var/lib/php/session
將這些與執行 php-fpm 的使用者和組 ID 進行比較。這些將在 PHP-FPM 的池配置或目錄中的文件中的
user =
和聲明中找到。group =``/etc/php-fpm.conf``/etc/php-fpm.d/