php-fpm.conf 配置说明
代码语言:shell复制配置项参考:https://www.cnblogs.com/xiangshihua/p/13329635.html pm参数的具体解释可参考:https://blog.csdn.net/0210/article/details/108801381
#全局设置,例如进程ID、错误日志路径和日志级别等。
[global]
#进程id存储地址
pid = /usr/local/php/var/run/php-fpm.pid
#日志地址
error_log = /usr/local/php/var/log/php-fpm.log
#日志等级,默认notice,可选:alert, error, warning, notice, debug
log_level = notice
#针对一个特定的FPM池的设置
[www]
#表示使用Unix域套接字文件来监听请求
#由于该文件位于文件系统中,因此需要考虑文件权限和共享问题
;listen = /tmp/php-cgi.sock
#定义了PHP-FPM进程监听的地址和端口
#表示PHP-FPM进程将会监听本地IP地址127.0.0.1的9000端口
#意味着只有本地可以连接到PHP-FPM进程,因此对于安全性较高的生产环境而言,这是一个常见的做法
listen = 127.0.0.1:9000
listen.backlog = -1
#设置允许连接fpm的地址,比如nginx就要来连,多个地址用逗号隔开,如果不配置,则默认任意地址都能来连。
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
#启动时子进程管理方式
#dynamic(启动时根据情况创建,至少有一个)
#static(启动时创建指定个数)
#ondemand(启动时不创建子进程,有需求才创建)
;pm = dynamic
pm = static
#同时存在的最大进程数,包括空闲和非空闲进程
#一个进程30M左右,一般不要超过服务器内存的80%
#如果服务是计算为主,则不要超过cpu核数
pm.max_children = 100
#启动时的进程数
pm.start_servers = 10
#设置最小空闲进程(影响并发增加时的空闲进程数)
pm.min_spare_servers = 10
#设置最大空闲进程(影响并发减少时的空闲进程数)
pm.max_spare_servers = 100
#每个子进程最大处理500请求就被回收,可防止内存泄露(一般是第三方组件会有泄露情况)。
#但若运行稳定也不需要设置
#pm.max_requests = 500
#请求超时时间
request_terminate_timeout = 30
#慢日志记录时间
request_slowlog_timeout = 2
#慢日志地址
slowlog = var/log/slow.log
#FPM 状态页面的网址。如果没有设置,则无法访问状态页面,默认值:无。
pm.status_path = /fpm-status
线上php-fpm.conf 配置 Demo
代码语言:text复制一般安装配置目录在
/usr/local/php/etc/php-fpm.conf
下面是 一个 2 vCPU 4 GiB 的配置参考
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = notice
[www]
;listen = /tmp/php-cgi.sock
listen = 127.0.0.1:9000
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
;pm = dynamic
pm = static
pm.max_children = 60
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers = 60
request_terminate_timeout = 30
request_slowlog_timeout = 2
slowlog = var/log/slow.log
pm.status_path = /fpm-status