• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

1.5-php-fpm配置文件

php 搞代码 4年前 (2022-01-23) 21次浏览 已收录 0个评论

/usr/local/php/etc/php-fpm.conf 是php服务的配置

/usr/local/php/etc/php.ini 是php软件的全局配置.如:时钟

主要配置的是php服务的配置,自带服务样板很乱,首先清空,插入代码

> /usr/local/php/etc/php-fpm.conf 清空文件

vim /usr/local/php/etc/php-fpm.conf 其实删除注释后,也就是下面的代码

[global]

pid = /usr/local/php/var/run/php-fpm.pid

error_log = /usr/local/php/var/log/php-fpm.log

[www]

listen = /tmp/php-fcgi.sock 监听的方式,一般为sockte 可以自定义,自动生成

user = php-fpm

group = php-fpm

pm = dynamic 动态的,管理下面的代码

pm.max_children = 50 最大50个子进程

pm.start_servers = 20 一开始启动20子子进程,即启动php就启动20个进程

pm.min_spare_servers = 5 最小子进程5个

pm.max_spare_servers = 35 最多35个子进程

pm.max_requests = 500 一个子进程在它的生命周期内,一共处理500个请求。自动销毁

rlimit_files = 1024 每一个进程,它所使用的文件描述符的限制,大点也没关系

slowlog = /tmp/www_slow.log 追踪网站,排查网站慢的日志

request_slowlog_timeout = 1 脚本超时1秒,记录到上条路径的slow.log中

php_admin_value[open_basedir]=/data/www/:/tmp/ 指定php有权限的目录

代码分为两个部分

1.global 全局配置,主要是pid和错误日志

2.www为服务配置,

如果配置中pm = static 那么只有pm.max_children = 50生效,也就是启动就有50个进程,其它不生效。

建议使用dynamic 一开始会启动20个pool,如果空闲,则一个个销毁,直到最小5个为止。

多个pool的配置 不同域名,对应不同pool。有2个好处,1可以为不同的网站赋予不同的权限2一个网站挂掉,不影响其他pool的网站。

[global]

pid = /usr/local/php/var/run/php-fpm.pid

error_log = /usr/local/php/var/log/php-fpm.log

[www]

listen = /tmp/www.sock

user = php-fpm

group = php-fpm

pm = dynamic

pm.max_children = 50

pm.start_servers = 20

pm.min_spare_servers = 5

pm.max_spare_servers = 35

pm.max_requests = 500

rlimit_files = 1024

slowlog = /tmp/www_slow.log

request_slowlog_timeout = 1

[www1] 本文@来#源gaodai$ma#com搞$$代**码网搞代gaodaima码 改动1

listen = /tmp/www1.sock 改动2

user = php-fpm

group = php-fpm

pm = dynamic

pm.max_children = 50

pm.start_servers = 20

pm.min_spare_servers = 5

pm.max_spare_servers = 35

pm.max_requests = 500

rlimit_files = 1024

slowlog = /tmp/www1_slow.log

request_slowlog_timeout = 1

课后答疑:

1:有两个问题1 这个listen = /tmp/php-fcgi.sock 什么时候写sock 什么时候用127.0.0.1:9000呢?

2 php-fmp里面php_admin_value[open_basedir] =/data/www/ 和nginx里面的虚拟主机配置文件root /data/aaa 如果这两个同时配置了那个目录会生效呢?

答:1. listen你愿意用哪个就哪个,都差不多,但有的人认为socket性能要比ip:port的形式高效,在我看来都差不多。

2. nginx配置的只是一个网站根目录,而php里面的open_basedir 是限定php的,你这样设置后,发现你的网站根本就不能运行了。

2:php-fpm设置了多个池子,如果需要每个pool指定不同的用户,那用户是在php编译安装时在这里–with-fpm-user=php-fpm如何绑定多个用户呢

答:上面那个是默认的,我们还可以在配置文件里定义额外的。

3:理解不了socket是什么

答:就是用来通信的文件,类似tcp/ip的通信机制,这种文件是unix/linux系统里面特有的。像mysql的数据通信,我们就可以使用socket文件通信。


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:1.5-php-fpm配置文件

喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址