您的位置:首页 > 编程语言 > PHP开发

Php-fpm的配置和优化

2017-12-14 13:06 288 查看
Nginx本身不能处理 php请求,它是一个web服务器,接收到php请求后,发给php解释器处理,并把结果返回给客户端

nginx 一般是把请求发给fastcgi 管理进程处理,fascgi管理进程选择cgi 子进程处理结果,并返回给nginx



php-fpm.conf 配置文件

[www]

pm.max_children = 15 #最大子进程数

pm.start_servers = 2 #启动时创建的子进程数

pm.max_requests = 500 #每个子进程可以处理的请求数

slowlog = log/$pool.log.slow #慢日志

request_slowlog_timeout = 10s #慢日志记录时间,注意单位,超时的会被纪录到slowlog的path文件中

rlimit_core = 1024

listen = /run/php/php7.2-fpm.sock

;listen.allowed_clients = 127.0.0.1 #限制访问ip为localhost any为所有主机

listen.owner = www-data #启动进程的用户

listen.group = www-data #启动进程的用户组

#以上两个配置需要和Server 相同

pm.max_requests = 500 #设置每个子进程重生之前服务的请求数. 对于可能存在内存泄漏的第三方模块来说是非常有用的. 如果设置为 '0' 则一直接受请求. 等同于 PHP_FCGI_MAX_REQUESTS 环境变量. 默认值: 0.

;request_terminate_timeout = 0 #设置单个请求的超时时间,这个设置和 php.ini 中配置的max_execution_time 这个参数一样,当max_execution_time 失效时,request_terminate_timeout 会被使用。

[global]
8
pid = /run/php/php7.2-fpm.pid

error_log = /var/log/php7.2-fpm.log #错误日志path

log_level = warning #默认为notice

daemonize = yes #后台执行fpm,默认值为yes
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php-fpm