您的位置:首页 > 编程学习 > > 正文

php-fpm配置文件在哪里(PHP-FPM 设置多pool及配置文件重写操作示例)

更多 时间:2021-10-21 07:23:41 类别:编程学习 浏览量:1834

php-fpm配置文件在哪里

PHP-FPM 设置多pool及配置文件重写操作示例

本文实例讲述了PHP-FPM 设置多pool及配置文件重写操作。分享给大家供大家参考,具体如下:

重写配置文件

1、清空php配置文件

命令:> /usr/local/php/etc/php-fpm.conf

2、重新写入php-fpm配置

命令:vim /usr/local/php/etc/php-fpm.con

配置文件

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • # 全局配置
  • [global]
  • # PID、可以不填
  • pid = /usr/local/php/var/run/php-fpm.pid
  • # 错误日志路径、可以不填
  • error_log = /usr/local/php/var/log/php-fpm.log
  • # www虚拟主机配置、可写多个
  • # pool命名:www
  • [www]
  • # 监听socket方式
  • # 可以写成listen = 127.0.0.1:9000
  • listen = /tmp/php-fcgi.sock
  • # 开启php-fpm的执行用户
  • user = php-fpm
  • # 开启php-fpm的所属组
  • group = php-fpm
  • # 监听listen的用户,和后面的nginx的一致
  • listen.owner = nobody
  • # 监听listen的组,和后面的nginx的一致
  • listen.group = nobody
  • # 怎样的形式启用进程
  • 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
  • 3、测试配置文件

  • ?
  • 1
  • 2
  • # 测试配置文件
  • /usr/local/php/sbin/php-fpm -t
  • 测试成功:

    [30-Jan-2018 23:43:32] NOTICE: configuration file /usr/local/php/etc/php-fpm.conf test is successful

    4、重启动php-fpm

    命令:/etc/init.d/php-fpm start

    5、查看启动状况

    查看启动进程

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • ps -aux | grep php-fpm
  • root   1530 0.0 0.5 32036 2928 ?    Ss  23:45  0:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
  • php-fpm  1531 0.0 0.4 32036 2512 ?    S  23:45  0:00 php-fpm: pool www
  • php-fpm  1532 0.0 0.4 32036 2512 ?    S  23:45  0:00 php-fpm: pool www
  • php-fpm  1533 0.0 0.4 32036 2512 ?    S  23:45  0:00 php-fpm: pool www
  • php-fpm  1534 0.0 0.4 32036 2512 ?    S  23:45  0:00 php-fpm: pool www
  • 查看监听是否为nobody用户

  • ?
  • 1
  • 2
  • ls -l /tmp/php-fcgi.sock
  • srw-rw-rw-. 1 nobody nobody 0 1月 30 23:45 /tmp/php-fcgi.sock
  • 注:权限都需要有读写,nginx才可以访问到socket。

    查看nginx是否调用了nobody

  • ?
  • 1
  • 2
  • 3
  • 4
  • ps aux | grep nginx
  • root   1606 0.0 0.1  5352  640 ?    Ss  02:46  0:00 nginx: master process /usr/local/nginx/sbin/nginx
  • nobody  1607 0.0 0.3  6164 1568 ?    S  02:46  0:00 nginx: worker process
  • root   1609 0.0 0.1  5980  744 pts/0  S+  02:46  0:00 grep nginx
  • 设置多个pool

    需求:置两个pool,www1,www2

    注:pool对应一个nginx的站点,这样可以提高安全,如同站点切割。

    1、主配置文件下配置两个pool。

    配置文件

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • # 全局配置
  • [global]
  • # PID、可以不填
  • pid = /usr/local/php/var/run/php-fpm.pid
  • # 错误日志路径、可以不填
  • error_log = /usr/local/php/var/log/php-fpm.log
  • # www虚拟主机配置、可写多个
  • [www1]
  • # 监听socket方式 可以写成127.0.0.1:9000 TCP的。
  • listen = /tmp/php-fcgi1.sock
  • # 开启php-fpm的执行用户
  • user = php-fpm
  • # 开启php-fpm的所属组
  • group = php-fpm
  • # 监听listen的用户,和后面的nginx的一致
  • listen.owner = nobody
  • # 监听listen的组,和后面的nginx的一致
  • listen.group = nobody
  • # 怎样的形式启用进程、static static静态、pm dynamic动态
  • 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/xxx_slow.log
  • # 处理延迟多少秒记录一次慢日志
  • request_slowlog_timeout = 1
  • # 配置隔离网站
  • php_admin_value[open_basedir]=/usr/local/url1:/usr/local/url2
  • # www虚拟主机配置、可写多个
  • [www2]
  • # 监听socket方式 可以写成127.0.0.1:9000 TCP的。
  • listen = /tmp/php-fcgi2.sock
  • # 开启php-fpm的执行用户
  • user = test
  • # 怎样的形式启用进程、static static静态、pm dynamic动态
  • 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/xxx2_slow.log
  • # 处理延迟多少秒记录一次慢日志
  • request_slowlog_timeout = 1
  • # 配置隔离网站
  • php_admin_value[open_basedir]=/usr/local/url1:/usr/local/url2
  • 2、查看两个pool的启动进程

    查看进程

  • ?
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • ps -aux | grep php-rpm
  • root   2486 0.4 0.6 32240 3136 ?    Ss  09:31  0:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
  • php-fpm  2487 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • php-fpm  2488 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • php-fpm  2489 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • php-fpm  2490 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • php-fpm  2491 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • php-fpm  2492 0.0 0.4 32036 2532 ?    S  09:31  0:00 php-fpm: pool www1
  • test   2507 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • test   2508 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • test   2509 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • test   2510 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • test   2511 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • test   2512 0.0 0.4 32036 2536 ?    S  09:31  0:00 php-fpm: pool www2
  • 希望本文所述对大家PHP程序设计有所帮助。

    原文链接:https://www.cnblogs.com/xiangsikai/p/8397328.html

    标签:PHP-FPM Pool