[www]php
listen = /tmp/www.socknginx
listen.mode=666vim
user = php-fpm瀏覽器
group = php-fpmcurl
pm = dynamicphp-fpm
pm.max_children = 50測試
pm.start_servers = 20網站
pm.min_spare_servers = 5url
pm.max_spare_servers = 35spa
pm.max_requests = 500
rlimit_files = 1024
[aming]
listen = /tmp/aming.sock
listen.mode=666
user = php-fpm
group = php-fpm
pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 500
rlimit_files = 1024
切換目錄,查看到定義的一個www的pool
編輯php-fpm配置文件vim /usr/local/php-fpm/etc/php-fpm.conf ,添加內容,保存退出
檢查語法錯誤,並從新加載
查看進程,會發現多了
切換目錄,編輯test.com.conf
編輯aaa.com.conf文件,增長內容,保存退出
添加php-fpm子配置文件
在php-fpm中的 [global] 中加入include = etc/php-fpm.d/*.conf
而後刪掉出[global]之外的內容,按100dd快速刪除
而後建立php-fpm.d目錄,切換目錄,建立www.conf和aming.conf文件,保存退出
檢查是否有語法錯誤,並從新加載
再查看進程
request_slowlog_timeout = 1
slowlog = /usr/local/php-fpm/var/log/www-slow.log
<?php
echo 「test slow log」;
sleep(2);echo 「done」;
?>
若是PHP網站訪問慢,咱們能夠經過查看慢執行日誌來分析
編輯vim /usr/local/php-fpm/etc/php-fpm.d/www.conf,增長內容,保存退出
檢查是否有語法錯誤,並從新加載
查看是否生成慢執行日誌,發現是空的
編寫測試腳本
運行腳本,發現有錯誤
打開配置文件,搜索/display_errors,修改以下,保存退出
從新加載並運行腳本,會看到語法錯誤,多是逗號或者分號寫的不對
從新編輯腳本文件,修改爲英文狀態下的
而後運行腳本(發現有停頓),並生成慢日誌,能夠分析慢日誌來解決php網站運行慢的緣由
php_admin_value[open_basedir]=/data/wwwroot/aming.com:/tmp/
編輯vim /usr/local/php-fpm/etc/php-fpm.d/www.conf,添加一行,保存退出
從新加載
訪問測試
打開配置文件vi /usr/local/php-fpm/etc/php.ini,定義錯誤日誌。
搜索/display_errors並修改display_errors=off,讓別人不能經過瀏覽器看到你的錯誤信息。
搜索 /error_log,指定錯誤日誌在哪裏
搜索error_reporting,註釋掉error_reporting,前面加個分號,本身添加一個error_reporting
從新加載,而後測試訪問,訪問正常
pm = dynamic,定義進程啓動方式(dynamic表示動態,static表示靜態),這裏定義dynamic,下面的配置才能所有生效。
pm.max_children = 50 ,啓動的最大子進程數,ps aux能夠查看
pm.start_servers = 20,啓動服務時會啓動的進程數
pm.min_spare_servers = 5,定義在空閒時段,子進程數的最少數量,低於此數值,自動派生新的子進程
pm.max_spare_servers = 35,定義在空閒時段,子進程數的最大值,高於此數值,開始清理空閒的子進程
pm.max_requests = 500,定義一個子進程最多處理的請求數,也就是說在一個php-fpm的子進程最多能夠處理這麼多請求,當達到這個數值時,它會自動退出。