php-fpm.conf 配置詳解
轉?http://www.cnblogs.com/zoro/archive/2012/01/10/2317964.html
?
運行時配置
FPM 設定檔為php-fpm.conf,其文法類似 php.ini 。
php-fpm.conf 全域配置段pid string
PID檔案的位置. 預設為空白.
error_log string
錯誤記錄檔的位置. 預設: 安裝路徑#INSTALL_PREFIX#/log/php-fpm.log.
log_level string
錯誤層級. 可用層級為: alert(必須立即處理), error(錯誤情況), warning(警告情況), notice(一般重要訊息), debug(調試資訊). 預設: notice.
emergency_restart_threshold int
如果子進程在emergency_restart_interval設定的時間內收到該參數設定次數的SIGSEGV 或者 SIGBUS退出資訊號,則FPM會重新啟動。 0 表示 '關閉該功能'. 預設值: 0 (關閉).
emergency_restart_interval mixed
emergency_restart_interval用於設定平滑重啟的間隔時間. 這麼做有助於解決加速器中共用記憶體的使用問題. 可用單位: s(秒), m(分), h(小時), 或者 d(天). 預設單位: s(秒). 預設值: 0 (關閉).
process_control_timeout mixed
設定子進程接受主進程複用訊號的逾時時間. 可用單位: s(秒), m(分), h(小時), 或者 d(天) 預設單位: s(秒). 預設值: 0.
daemonize boolean
設定FPM在後台運行. 設定 'no' 將 FPM 保持在前台運行用於調試. 預設值: yes.
回合組態區段
在FPM中,可以使用不同的設定來運行多個進程池。 這些設定可以針對每個進程池單獨設定。
listen string
設定接受FastCGI請求的地址. 可用格式為: 'ip:port', 'port', '/path/to/unix/socket'. 每個進程池都需要設定.
listen.backlog int
設定 listen(2) 的半串連隊列長度. '-1' 表示無限制. 預設值: -1.
listen.allowed_clients string
設定允許串連到FastCGI的伺服器IPV4地址. 等同於PHP FastCGI (5.2.2+)中的 FCGI_WEB_SERVER_ADDRS環境變數. 僅對TCP監聽起作用. 每個地址是用逗號分隔. 如果沒有設定或者為空白,則允許任何伺服器請求串連. 預設值: any.
listen.owner string
如果使用,表示設定Unix通訊端的許可權. 在Linux中,讀寫權限必須設定,以便用於WEB伺服器串連. 在很多BSD派生的系統中可以忽略許可權允許自由串連. 預設值: 運行所使用的使用者合租, 許可權為0666.
listen.group string
參見 listen.owner.
listen.mode string
參見 listen.owner.
user string
FPM 進程啟動並執行Unix使用者. 必須設定.
group string
FPM 進程啟動並執行Unix使用者組. 如果沒有設定,則預設使用者的組被使用.
pm string
設定進程管理器如何管理子進程. 可用值: static, dynamic. 必須設定.
static - 子進程的數量是固定的 (pm.max_children).
dynamic - 子進程的數量在下面配置的基礎上動態設定: pm.max_children, pm.start_servers, pm.min_spare_servers, pm.max_spare_servers.
pm.max_children int
子進程的數量,pm 設定為 static 時表示建立的, pm 設定為 dynamic 時表示最大可建立的. 必須設定.
該選項設定可以同時提供服務的請求數限制. 類似 Apache 的 mpm_prefork 中 MaxClients 的設定和 普通PHP FastCGI中的 PHP_FCGI_CHILDREN 環境變數.
pm.start_servers in
設定啟動時建立的子進程數目. 僅在 pm 設定為 dynamic 時使用. 預設值: min_spare_servers + (max_spare_servers - min_spare_servers) / 2.
pm.min_spare_servers int
設定空閑服務進程的最低數目. 僅在 pm 設定為 dynamic 時使用. 必須設定.
pm.max_spare_servers int
設定空閑服務進程的最大數目. 僅在 pm 設定為 dynamic 時使用. 必須設定.
pm.max_requests int
設定每個子進程重生之前服務的請求數. 對於可能存在記憶體流失的第三方模組來說是非常有用的. 如果設定為 '0' 則一直接受請求. 等同於 PHP_FCGI_MAX_REQUESTS 環境變數. 預設值: 0.
pm.status_path string
FPM狀態頁面的網址. 如果沒有設定, 則無法訪問狀態頁面. 預設值: none.
ping.path string
FPM監控頁面的ping網址. 如果沒有設定, 則無法訪問ping頁面. 該頁面用於外部檢測FPM是否存活並且可以響應請求. 請注意必須以斜線開頭 (/).
ping.response string
用於定義ping請求的返回相應. 返回為 HTTP 200 的 text/plain 格式文本. 預設值: pong.
request_terminate_timeout mixed
設定單個請求的逾時中止時間. 該選項可能會對php.ini設定中的'max_execution_time'因為某些特殊原因沒有中止啟動並執行指令碼有用. 設定為 '0' 表示 'Off'. Available units: s(econds)(default), m(inutes), h(ours), or d(ays). Default value: 0.
request_slowlog_timeout mixed
當一個請求該設定的逾時時間後,就會將對應的PHP呼叫堆疊資訊完整寫入到慢日誌中. 設定為 '0' 表示 'Off'. 可用單位: s(秒)(預設), m(分), h(小時), 或者 d(天). 預設值: 0.
slowlog string
慢請求的記錄日誌. 預設值: #INSTALL_PREFIX#/log/php-fpm.log.slow.
rlimit_files int
設定檔案開啟描述符的rlimit限制. 預設值: 系統定義值.
rlimit_core int
設定核心rlimit最大限制值. 可用值: 'unlimited' 、0或者正整數. 預設值: 系統定義值.
chroot string
啟動時的Chroot目錄. 所定義的目錄需要是絕對路徑. 如果沒有設定, 則chroot不被使用.
chdir string
設定啟動目錄,啟動時會自動Chdir到該目錄. 所定義的目錄需要是絕對路徑. 預設值: 目前的目錄,或者/目錄(chroot時).
catch_workers_output boolean
重新導向運行過程中的stdout和stderr到主要的錯誤記錄檔檔案中. 如果沒有設定, stdout 和 stderr 將會根據FastCGI的規則被重新導向到 /dev/null . 預設值: 空.