重写配置文件
1、清空php配置文件
命令:> /usr/local/php/etc/php-fpm.conf
2、重新写入php-fpm配置
命令:vim /usr/local/php/etc/php-fpm.conf
# 全局配置
[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、测试配置文件
# 测试配置文件
/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、查看启动状况
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

查看启动进程

ls -l /tmp/php-fcgi.sock 

srw-rw-rw-. 1 nobody nobody 0 1月  30 23:45 /tmp/php-fcgi.sock

注:权限都需要有读写,nginx才可以访问到socket。

查看监听是否为nobody用户

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

查看nginx是否调用了nobody


设置多个pool

需求:置两个pool,www1,www2
注:pool对应一个nginx的站点,这样可以提高安全,如同站点切割。
 
1、主配置文件下配置两个pool。
# 全局配置
[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的启动进程

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-FPM 设置多pool、配置文件重写的更多相关文章

  1. Nginx 配置文件重写

    nginx主配置文件 1.清空过Nginx配置文件,修改: vim /usr/local/nginx/conf/nginx.conf # 以那个账户,账户组来运行nginx user nobody n ...

  2. 为每一个应用程序池单独设置aspnet.config配置文件

    ASP.NET2.0之后的版本号就在各Framework的根文件夹下提供了一个aspnet.config文件.这个文件用来配置全局的一些信息,可是一直以来我们都没有怎么用过. ASP.NET4.0之后 ...

  3. SpringBoot多环境部署,在启动时动态设置相应的配置文件

    项目中,往往在测试环境和正式环境拥有不同的配置,例如数据库连接,第三方库的appkey等.这时候,我们就要在不同的环境启用不同的配置 下面新建三个文件,分别表示开发环境,生产环境和测试环境的配置文件 ...

  4. 【Spring Boot】Spring Boot项目设置多个配置文件,并在生产环境中的Tomcat设置对应的配置文件

    1.修改Spring Boot项目配置文件 除了主配置文件,另外创建2个配置文件,注意命名要用application-*.properties 主配置文件中写入,使用dev作为开发配置 spring. ...

  5. 【设置】Nginx配置文件具体配置解释

    #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_processes 8; #全局错误日志定义类型,[ debug | ...

  6. WPF 分享一种设置程序保存配置文件的方法

    最近需要做一个配置程序,主要给其他程序做相关配置的小工具. 配置项蛮多的,一般我们都是将各个配置项写到配置文件的节点中,比如App.config文件或者自定义的xml文件. 因为我用的是wpf,MVV ...

  7. 读取、设置 php.ini配置文件(复制)

    1.ini_get()获取配置参数,ini_set()设置配置参数 复制代码 代码如下: <?phpecho ini_get('display_errors'); //1//动态修改php.in ...

  8. SpringBoot中打包设置,将配置文件打包在外部

    一.每次用maven的打包工具打包的时候 总是将配置文件一起打包进jar中!配置文件有点小修改就要重新打包很麻烦!!!!为了解决这一麻烦!找 了很多方法,下面的配置已经实现可用 我的项目目录结构如下 ...

  9. nginx配置文件重写url不带index.php

    如题: 代码 location / { root /项目目录/; index index.php; if (-f $request_filename/index.php){ rewrite (.*) ...

随机推荐

  1. java读取配置文件(转)

    转载:http://blog.csdn.net/gaogaoshan/article/details/8605887 java 4种方式读取配置文件 + 修改配置文件     方式一:采用Servle ...

  2. 说说常见的几个js疑难点

    JavaScript match() 方法 定义和使用方法 match() 方法可在字符串内检索指定的值,或找到一个或多个正則表達式的匹配. 该方法类似 indexOf() 和 lastIndexOf ...

  3. java各个版本垃圾收集器?

    1.7G1

  4. Android网络框架-Volley实践 使用Volley打造自己定义ListView

    这篇文章翻译自Ravi Tamada博客中的Android Custom ListView with Image and Text using Volley 终于效果 这个ListView呈现了一些影 ...

  5. 面试题思考:什么是 Java 的反射机制

    一.反射机制概述 Java 反射机制是在运行状态中,对于任意一个类,都能够获得这个类的所有属性和方法,对于任意一个对象都能够调用它的任意一个属性和方法.这种在运行时动态的获取信息以及动态调用对象的方法 ...

  6. svn服务器配置 for mac

      本文转载至 http://blog.sina.com.cn/s/blog_5e42f31a010156z4.html 1.找到合适的目录,新建一个版本库的目录:mkdir svn 创建版本库:sv ...

  7. UIWebview打开.txt文件中文乱码解决

    用UIWebview打开txt文件有时候会出现乱码的情况,这种情况应该是txt的编码问题,解决方案如下: txt分带编码和不带编码两种,带编码的如UTF-8格式txt,不带编码的如ANSI格式txt. ...

  8. 【BZOJ4712】洪水 树链剖分优化DP+线段树

    [BZOJ4712]洪水 Description 小A走到一个山脚下,准备给自己造一个小屋.这时候,小A的朋友(op,又叫管理员)打开了创造模式,然后飞到山顶放了格水.于是小A面前出现了一个瀑布.作为 ...

  9. 【BZOJ4378】[POI2015]Logistyka 树状数组

    [BZOJ4378][POI2015]Logistyka Description 维护一个长度为n的序列,一开始都是0,支持以下两种操作:1.U k a 将序列中第k个数修改为a.2.Z c s 在这 ...

  10. 从global到mooncake迁移SQL Azure

    之前遇到了问题,在此备注一下: 因为两个环境基本上可以认为是隔离的,所以迁移过程基本上只有通过导出.导入的方式(也是官方推荐的方式): 1.从global上进行数据库的export操作(扩展名bacp ...