[global]
#指定 PHP-FPM 进程的 PID 文件路径,用于记录 PHP-FPM 主进程的进程 ID。
pid = /run/php-fpm/php-fpm.pid
#指定 PHP-FPM 错误日志文件的路径,用于记录 PHP-FPM 的错误和警告信息。
error_log = /var/log/php-fpm/error.log
#设置 PHP-FPM 日志级别为 "notice",这将记录重要的系统事件和警告信息。
log_level = notice
#指定在指定时间内出现多少次异常情况(例如子进程意外退出)后,触发 PHP-FPM 主进程的紧急重启。
emergency_restart_threshold = 10
#指定触发紧急重启的时间间隔。在此示例中,它被设置为 1 分钟。
emergency_restart_interval = 1m
#指定在 PHP-FPM 主进程无法接收信号时的超时时间。
process_control_timeout = 10s
#将 PHP-FPM 设置为以守护进程方式运行。
daemonize = yes
[www]
#指定 PHP-FPM 子进程运行时所使用的用户和组。
user = www-data
group = www-data
#指定 PHP-FPM 子进程监听的套接字文件。
listen = /run/php-fpm/php-fpm.sock
#设置连接队列的大小,用于控制并发连接数
listen.backlog = 65535
#指定监听套接字的所有者和组。
listen.owner = www-data
listen.group = www-data
#设置监听套接字的权限。
listen.mode = 0660
#使用动态进程管理模式。
pm = dynamic
#设置 PHP-FPM 进程池中最大子进程的数量。
#作用:这是 PHP-FPM 能够同时处理的最大并发请求数。超过这个数量的请求将被排队等待处理。
pm.max_children = 100
#设置 PHP-FPM 进程池中初始子进程的数量。
#作用:在 PHP-FPM 服务启动时,预先创建的子进程数量,以便能够快速响应初始请求。
pm.start_servers = 20 #pm.start_servers 的数量应该在 pm.min_spare_servers 和 pm.max_spare_servers 之间。
#设置 PHP-FPM 进程池中最小空闲子进程的数量。
#作用:确保系统中始终有一定数量的空闲子进程,可以快速响应新请求。如果空闲子进程少于这个值,PHP-FPM 会创建新的子进程。
pm.min_spare_servers = 5
#设置 PHP-FPM 进程池中最大空闲子进程的数量。
#作用:控制空闲子进程的最大数量,防止创建过多的空闲进程浪费系统资源。如果空闲子进程数超过这个值,多余的进程将被终止。
pm.max_spare_servers = 35
#设置每个子进程在处理多少个请求后自动重启。
pm.max_requests = 500
#设置空闲子进程在被终止之前等待新请求的时间,单位为秒(可以设置为 s、m、h)。
pm.process_idle_timeout = 10s
#设置每个请求的最长执行时间,单位为秒(可以设置为 s、m、h)。
request_terminate_timeout = 30s
#设置子进程可以打开的文件描述符的最大数量。
rlimit_files = 131072
#设置核心文件的最大大小,unlimited 意味着没有限制。
rlimit_core = unlimited
一个优秀的运维当然要知道php-fpm.conf里常用的参数是什么意思
于 2024-05-22 09:51:30 首次发布