-
listen 字串
-
接受 FastCGI 請求的地址。有效語法為:'ip.add.re.ss:port'、'port'、'/path/to/unix/socket'。此選項對每個池都是必需的。
-
listen.backlog 整數
-
設定 listen(2) 的 backlog。值 -1 在 BSD 系統上表示最大值。預設值:-1(FreeBSD 或 OpenBSD)或 511(Linux 和其他平台)。
-
listen.allowed_clients 字串
-
允許連線的 FastCGI 用戶端的 IPv4 或 IPv6 地址列表。相當於原始 PHP FastCGI (5.2.2+) 中的 FCGI_WEB_SERVER_ADDRS 環境變數。僅適用於 tcp 監聽 socket。每個地址必須以逗號分隔。如果此值留空,則將接受來自任何 IP 地址的連線。預設值:未設定(接受任何 IP 地址)。
-
listen.owner 字串
-
如果使用 Unix socket,則設定其權限。在 Linux 中,必須設定讀/寫權限才能允許來自網路伺服器的連線。許多源自 BSD 的系統允許連線,而不論權限為何。預設值:使用者和群組設定為正在執行的使用者,模式設定為 0660。
-
listen.group 字串
-
請參閱 listen.owner。
-
listen.mode 字串
-
請參閱 listen.owner。
-
listen.acl_users 字串
-
當支援 POSIX 訪問控制列表時,您可以使用此選項進行設定。設定後,listen.owner 和 listen.group 將被忽略。值是以逗號分隔的使用者名稱列表。
-
listen.acl_groups 字串
-
請參閱 listen.acl_users。值是以逗號分隔的群組名稱列表。
-
user 字串
-
FPM 處理程序的 Unix 使用者。此選項是必需的。
-
group 字串
-
FPM 處理程序的 Unix 群組。如果未設定,則使用預設使用者的群組。
-
pm 字串
-
選擇處理程序管理員將如何控制子處理程序的數量。可能的值:static、ondemand、dynamic。此選項是必需的。
static - 子處理程序的數量是固定的(pm.max_children)。
ondemand - 處理程序按需產生(在請求時,與 dynamic 不同,dynamic 會在服務啟動時啟動 pm.start_servers)。
dynamic - 子進程的數量會根據以下指令動態設定:pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers。
-
pm.max_children 整數
-
當 pm 設定為 static 時,要建立的子進程數量;當 pm 設定為 dynamic 時,要建立的子進程最大數量。此選項為必填。
此選項設定同時處理請求數量的上限。相當於 mpm_prefork 模組下的 Apache 的 MaxClients 指令,以及原始 PHP FastCGI 中的環境變數 PHP_FCGI_CHILDREN。
-
pm.start_servers 整數
-
啟動時建立的子進程數量。僅在 pm 設定為 dynamic 時使用。預設值:(min_spare_servers + max_spare_servers) / 2。
-
pm.min_spare_servers 整數
-
閒置伺服器進程的期望最小數量。僅在 pm 設定為 dynamic 時使用。在此情況下也為必填。
-
pm.max_spare_servers 整數
-
閒置伺服器進程的期望最大數量。僅在 pm 設定為 dynamic 時使用。在此情況下也為必填。
-
pm.max_spawn_rate 整數
-
一次產生子進程的速率。僅在 pm 設定為 dynamic 時使用。預設值:32。
-
pm.process_idle_timeout 混合
-
閒置進程在幾秒後將被終止。僅在 pm 設定為 ondemand 時使用。可用單位:s(秒)(預設)、m(分鐘)、h(小時)或 d(天)。預設值:10s。
-
pm.max_requests 整數
-
每個子進程在重新產生之前應該執行的請求數量。這對於解決第三方程式庫中的記憶體洩漏問題很有用。對於無止盡的請求處理,請指定「0」。相當於 PHP_FCGI_MAX_REQUESTS。預設值:0。
-
pm.status_listen 字串
-
接受 FastCGI 狀態請求的位址。這會建立一個新的不可見池,可以獨立處理請求。如果主池忙於處理長時間執行的請求,這會很有用,因為在長時間執行的請求完成之前,仍然可以取得FPM 狀態頁面。語法與listen指令相同。預設值:無。
-
pm.status_path 字串
-
用於檢視FPM 狀態頁面的 URI。此值必須以斜線 (/) 開頭。如果未設定此值,則不會將任何 URI 識別為狀態頁面。預設值:無。
-
ping.path 字串
-
用於呼叫 FPM 監控頁面的 ping URI。如果未設定此值,則不會將任何 URI 識別為 ping 頁面。這可以用於從外部測試 FPM 是否處於活動狀態並正在回應。請注意,此值必須以斜線 (/) 開頭。
-
ping.response 字串
-
此指令可用於自訂 ping 請求的回應。回應格式為 text/plain,回應碼為 200。預設值:pong。
-
process.priority 整數
-
指定套用至工作行程的 nice(2) 優先順序(僅在設定時)。值可以從 -19(最高優先順序)到 20(最低優先順序)。預設值:未設定。
-
process.dumpable 布林值
-
即使行程的使用者或群組與主行程的使用者不同,也設定行程的 dumpable 旗標(PR_SET_DUMPABLE prctl)。它允許為池使用者建立行程核心傾印檔並使用 ptrace 追蹤行程。預設值:否。從 PHP 7.0.29、7.1.17 和 7.2.5 開始提供。
-
prefix 字串
-
指定路徑評估的前綴
-
request_terminate_timeout 混合
-
處理單一請求的逾時時間,超過此時間後工作行程將被終止。當 'max_execution_time' ini 選項因故無法停止腳本執行時,應使用此選項。值 '0' 表示「關閉」。可用單位:s(秒)(預設)、m(分鐘)、h(小時)或 d(天)。預設值:0。
-
request_terminate_timeout_track_finished 布林值
-
在 fastcgi_finish_request 之後或應用程式已完成且正在呼叫內部關閉函式時,request_terminate_timeout 設定的逾時不會生效。此指令將允許即使在這種情況下也無條件套用逾時限制。預設值:否。從 PHP 7.3.0 開始提供。
-
request_slowlog_timeout 混合
-
處理單一請求的逾時時間,超過此時間後,PHP 回溯將被傾印到「slowlog」檔案。值 '0' 表示「關閉」。可用單位:s(秒)(預設)、m(分鐘)、h(小時)或 d(天)。預設值:0。
-
request_slowlog_trace_depth 整數
-
slowlog 記錄堆疊追蹤的深度。預設值:20。從 PHP 7.2.0 開始提供。
-
slowlog 字串
-
慢速請求的記錄檔。預設值:#INSTALL_PREFIX#/log/php-fpm.log.slow。
-
rlimit_files 整數
-
設定此池中子行程的開啟檔案描述器 rlimit。預設值:系統定義值。
-
rlimit_core 整數
-
設定此池中子行程的最大核心大小 rlimit。可能的值:「unlimited」或大於或等於 0 的整數。預設值:系統定義值。
-
chroot 字串
-
啟動時切換根目錄到此目錄。此值必須定義為絕對路徑。未設定此值時,不使用 chroot。
-
chdir 字串
-
啟動時變更目錄到此目錄。此值必須是絕對路徑。預設值:目前目錄或 chroot 時為 /。
-
catch_workers_output 布林值
-
將工作行程的標準輸出和標準錯誤輸出重新導向到主要錯誤記錄檔。如果未設定,標準輸出和標準錯誤輸出將根據 FastCGI 規範重新導向到 /dev/null。預設值:否。
-
decorate_workers_output 布林值
-
當 catch_workers_output 啟用時,啟用工作行程輸出的裝飾。預設值:是。從 PHP 7.3.0 開始提供。
-
clear_env 布林值
-
清除 FPM worker 中的環境變數。在新增此池設定中指定的環境變數之前,先清除 worker 中的環境變數,以防止任意環境變數傳遞到 FPM worker 程序。預設值:是。
-
security.limit_extensions 字串
-
限制 FPM 將解析的主要腳本的副檔名。這可以防止 Web 伺服器端的設定錯誤。您應該僅將 FPM 限制為 .php 副檔名,以防止惡意使用者使用其他副檔名執行 PHP 程式碼。預設值:.php .phar
-
apparmor_hat 字串
-
如果啟用了 AppArmor,則允許更改 hat。預設值:未設定
-
access.log 字串
-
存取記錄檔。預設值:未設定
-
access.format 字串
-
存取記錄格式。預設值:"%R - %u %t \"%m %r\" %s"