安裝php7+的,如果php-fpm的這幾個引數設定不當了,會導致php-fpm啟動不了,nginx站點不能解析php檔案,報404錯誤。
相關命令:
centos7+,啟動php-fpm:
systemctl start php-fpm
檢視php-fpm是否啟動:
ps -ef|grep php
php-fpm的核心引數配置,預設如下:
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3
只針對動態方式dynamic說明如下:
max_children:動態方式下限定php-fpm的最大程式數
start_servers:動態方式下的起始php-fpm程式數量
min_spare_servers :動態方式空閒狀態下的最小php-fpm程式數量
max_spare_servers :動態方式空閒狀態下的最大php-fpm程式數量
這些引數如果注意改錯了引數會導致php-fpm啟動不了,nginx也就無法訪問php檔案,可檢視日誌排查錯誤:
/usr/local/php/var/log/php-fpm.log
規則彙總:
- max_children 必須大於 min_spare_servers
- max_children 必須大於 max_spare_servers
- start_servers 必須大於 min_spare_servers
- start_servers = min_spare_servers + (max_spare_servers – min_spare_servers) / 2
PS:我伺服器是8G記憶體,目前空閒還多,我就統一後面加了個0,分別是50、20、10、30。