PHP-FPM 使用

PHP-FPM

是在 Linux 环境下用来管理调度 PHP 执行的调度器,源码安装时会自动安装,PHP 安装可参考Centos 下安装 PHP (新)

查看版本

# php-fpm -v

启动

# php-fpm -c php.ini -y php-fpm.conf

重启

# php-fpm restart

# kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

扩展

# /etc/init.d/php-fpm { start/stop/restart/reload... }

# /service php-fpm { start/stop/restart/reload... }

service 命令就是调用 /etc/init.d 目录下的脚本文件,这种方式其实就是对 kill 方式的一种封装

信号

信号 作用
INT 立即终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 重启(平滑重载所有 worker 进程并重新载入配置和二进制模块)

如何在同一台主机下运行多个 php 配置监听多个端口

场景有 wwwroot/a.com 和 wwwroot/b.com,a.com 使用 9001 端口,b.com 使用 9002 端口。方法是

  • 建立多个配置文件
# cd /usr/local/php/etc/php-fpm.d
# cp www.conf a.com.conf
# vi a.com.conf 修改进程池名,重名的话后面载入的配置会覆盖掉同名的
[www] 修改为 [a.com] 修改使用的用户名和组
user = nginx(与 nginx.con 相同)
group = nginx 修改侦听
listen = 127.0.0.1:9001

按相同方式,再复制出一个 b.com.conf

  • 命令方式载入多个配置
# /etc/init.d/php-fpm restart --config-php /usr/local/php/etc/php-fpm.d/a.com.conf
# /etc/init.d/php-fpm restart --config-php /usr/local/php/etc/php-fpm.d/b.com.conf 查看一下
# ps aux|grep php-fpm 输出
# root 24425 0.0 0.1 151364 4892 ? Ss 14:14 0:00 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
# nginx 24426 0.0 0.1 151348 4448 ? S 14:14 0:00 php-fpm: pool a.com
# nginx 24427 0.0 0.1 151348 4448 ? S 14:14 0:00 php-fpm: pool a.com
# nginx 24428 0.0 0.1 151348 5380 ? S 14:14 0:00 php-fpm: pool b.com
# nginx 24429 0.0 0.1 151348 5380 ? S 14:14 0:00 php-fpm: pool b.com
# nginx 24430 0.0 0.1 151348 5380 ? S 14:14 0:00 php-fpm: pool www
# nginx 24431 0.0 0.1 151348 5380 ? S 14:14 0:00 php-fpm: pool www
# root 24433 0.0 0.0 112712 968 pts/0 S+ 14:17 0:00 grep --color=auto php-fpm

可以看到 pool 后面有三个地址,a.com、b.com是自建的两个配置,www 是 www.conf 默认的

参考

多个项目公用php的一个端口好还是一个项目使用一个php端口?

linux启动多个php-fpm

PHP-FPM多实例配置及nginx对应配置

PHP-FPM 使用(含多站点多端口)的更多相关文章

  1. wamp多站点多端口配置

    1.配置httpd.conf 监听多个端口 #Listen 12.34.56.78:80 Listen 8081 Listen 8082 Listen 8083 可以通过netstat -n -a查看 ...

  2. 在XP上运行IIS5.1新建站点

    系统问题,XP下IIS5.1不能直接新建站点,因为内核限制只能同时运行一个站点,要想新建站点,必须把当前站点停掉,然后用adsutil.vbs脚本创建,脚本在C:\Inetpub\AdminScrip ...

  3. tomcat 一个服务 多端口网站

    多站点多端口   <Service name="Catalina">      <Connector port="8080" protocol ...

  4. 基于Nginx+redis的Asp.net站点搭建

    剧情介绍 在传统的信息系统(比如小规模的ERP\MES系统),往往只是进行简单的应用服务器和数据库服务器的分布式部署,以此来提高应用系统的负载能力,而伴随着访问的增大,应用服务器层面除了做硬件和网络的 ...

  5. swagger.net 使用nginx 代理时出现端口号导致出错

    1:当我们通过nginx代理访问时,由于nginx配置了映射到的一个站点为端口为127.0.0.1:6201,导致访问swagger接口时出现增加端口号,如下截图,这样就导致整个swagger无法使用 ...

  6. 启动PHP study时提示80端口或者3306端口被占用的解决办法

    一.查看PID WIN+R打开命令行------>netstat -ano+回车,就会显示下面的信息: 二.打开任务管理器 Ctrl+Alt+Delete------>任务管理器,找到对应 ...

  7. Windows 之 手机访问 PC 端本地部署的站点

    测试网页在手机上的显示工具我们可以使用谷歌内核的浏览器,打开开发者工具(F12),在device那里选择设备,然后刷新来查看网页在手机上的显示效果. 但毕竟是模拟的,如果想要在真机上调试该怎么办呢. ...

  8. ASP.NET Core 入门(4)(IIS 部署前后端站点)

    .NET Core发布部署的文章园内有很多了,大家可以自行百度,该篇主要想总结需要注意的地方,列举前后端(比如前段 Vue,后端 WebAPI)在同一台服务器上的主要两种方式. 两种方式: 1. 前后 ...

  9. j2EE经典面试题

    1. hibernate中离线查询去除重复项怎么加条件? dc.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY); 2. http协议及端口,sm ...

随机推荐

  1. 漫谈LiteOS之开发板-GPIO(基于GD32450i-EVAL)

    [摘要] 本文主要从GPIO的定义.工作模式.特色.工作场合.以及GD32450i-EVAL开发板的引脚.对应的寄存器以及GPIO的流水灯示例对GPIO加以介绍,希望对你有所帮助. 1定义 GPIO( ...

  2. 【华为云网络技术分享】HTTP重定向HTTPS配置指南

    [摘要] 本文介绍使用华为云弹性负载均衡配置Http重定向到Https的方法. 1. HTTP.HTTPS 头部标识 ELB 对 HTTPS 进行代理,无论是 HTTP 还是 HTTPS 请求,到了  ...

  3. Unity3D for iOS初级教程:Part 3/3(上)

    转自:http://www.cnblogs.com/alongu3d/archive/2013/06/01/3111738.html 欢迎来到第三部分,这是Unity 3D for iOS初级系列教程 ...

  4. openlayers5-webpack 入门开发系列结合 turf.js 实现等值线(附源码下载)

    前言 openlayers5-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载 ...

  5. 基于STM32F1 的BASIC解码实验 vb basic 液晶显示执行过程及结果

    基于STM32F1 的BASIC解码实验 1.basic程序以文件形式存储 2.程序文件存储在sd卡 3.解释结果显示在液晶屏上 主函数部分 int main(void){ u16 i,j; dela ...

  6. Orleans[NET Core 3.1] 学习笔记(一).NET环境下的分布式应用程序

    前言 Orleans是一个跨平台的框架,用于搭建可扩展的分布式应用程序 第一次接触Orleans还是两年前做游戏服务器的时候,用SignalR+Orleans的组合,写起代码来不要太爽. 即将进入20 ...

  7. python之with语句结合上下文管理器

    所谓上下文管理器即在一个类中重写了__enter__方法和__exit__方法的类就可以成为上下文管理器类. 我们可以通过with语句结合上下文管理器简化一些操作. 使用with语句结合自定义上下文管 ...

  8. 深入浅出分析 PriorityQueue

    一.摘要 在前几篇文章中,咱们了解到,Queue 的实现类有 ArrayDeque.LinkedList.PriorityQueue. 在上一章节中,陆续的介绍到 ArrayDeque 和 Linke ...

  9. 分享一个mysql服务启动与关闭的bat文件

    有时候打开数据库可视化工具(sqlyog.navicat)连接数据库时,会出现以下报错信息. 大家都知道是数据库的服务没有启动. 所以我想给大家分享一个bat文件可供快速启动mysql的数据库的服务, ...

  10. oracle中的分组排序

    1.首先,需要建表. 表名:coursr(失误,表名写错了) 2.我们需要对每个课程进行排序. 3.知识准备: 分组排序函数有3种: row_number() over() rank() over() ...