centos 7 配置php-fpm服务到systemctl
2017-08-15 16:40
357 查看
编译安装好php后
目录为/usr/local/php
正常启动方式为:
/usr/local/php/sbin/php-fpm
php 5.3.3 以后的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,所以不要再看这种老掉牙的命令了,需要使用信号控制:
master进程可以理解以下信号
INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块
先查看php-fpm的master进程号
ps aux|grep php-fpm
root 21891 0.0 0.0 112660 960 pts/3 R+ 16:18 0:00 grep –color=auto php-fpm
root 42891 0.0 0.1 182796 1220 ? Ss 4月18 0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody 42892 0.0 0.6 183000 6516 ? S 4月18 0:07 php-fpm: pool www
nobody 42893 0.0 0.6 183000 6508 ? S 4月18 0:17 php-fpm: pool www
重启php-fpm
kill -USR2 42891
关闭php-fpm
kill INT/TERM 42891
以上启动方式是在没有生产php-fpm.pid文件时使用生效,若是要生成php-fpm.pid文件,修改/usr/local/php/etc/php-fpm/conf文件,默认pid是注释的,打开pid,修改路径
pid = /var/run/php-fpm.pid
wq保存退出,kill -USR2 42981重启php-fpm,便会生成pid文件,之后使用以下命令关闭重启
php-fpm 关闭:
kill -INT ‘cat /var/run/php-fpm.pid’
php-fpm 重启:
kill -USR2 ‘cat /var/run/php-fpm.pid’
现在开始配置systemctl启动php-fpm
按照上面所述先打开php-fpm.pid,关闭php-fpm服务
在/usr/lib/systemd/system/目录下生成php-fpm.service文件,赋予754权限,vim修改:
[Unit]
Description=php-fpm
After=syslog.target network.target
[Service]
Type=forking
PIDFile=/var/run/php-fpm.pid
ExecStart=/usr/local/php/sbin/php-fpm
ExecReload=/bin/kill -USR2 MAINPIDExecStop=/bin/kill−INTMAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[Unit]部分主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别
[Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里Type=forking是后台运行的形式,PIDFile为存放PID的文件路径,ExecStart为服务的具体运行命令,ExecReload为重启命令,ExecStop为停止命令,PrivateTmp=True表示给服务分配独立的临时空间,注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!
[Install]部分是服务安装的相关设置,可设置为多用户的
wq保存退出,执行如下命令生效
systemctl daemon-reload
systemctl start/reload/stop php-fpm.service 若发生报错,可执行systemctl status php-fpm.service查看报错原因,排查。
目录为/usr/local/php
正常启动方式为:
/usr/local/php/sbin/php-fpm
php 5.3.3 以后的php-fpm 不再支持 php-fpm 以前具有的 /usr/local/php/sbin/php-fpm (start|stop|reload)等命令,所以不要再看这种老掉牙的命令了,需要使用信号控制:
master进程可以理解以下信号
INT, TERM 立刻终止
QUIT 平滑终止
USR1 重新打开日志文件
USR2 平滑重载所有worker进程并重新载入配置和二进制模块
先查看php-fpm的master进程号
ps aux|grep php-fpm
root 21891 0.0 0.0 112660 960 pts/3 R+ 16:18 0:00 grep –color=auto php-fpm
root 42891 0.0 0.1 182796 1220 ? Ss 4月18 0:19 php-fpm: master process (/usr/local/php/etc/php-fpm.conf)
nobody 42892 0.0 0.6 183000 6516 ? S 4月18 0:07 php-fpm: pool www
nobody 42893 0.0 0.6 183000 6508 ? S 4月18 0:17 php-fpm: pool www
重启php-fpm
kill -USR2 42891
关闭php-fpm
kill INT/TERM 42891
以上启动方式是在没有生产php-fpm.pid文件时使用生效,若是要生成php-fpm.pid文件,修改/usr/local/php/etc/php-fpm/conf文件,默认pid是注释的,打开pid,修改路径
pid = /var/run/php-fpm.pid
wq保存退出,kill -USR2 42981重启php-fpm,便会生成pid文件,之后使用以下命令关闭重启
php-fpm 关闭:
kill -INT ‘cat /var/run/php-fpm.pid’
php-fpm 重启:
kill -USR2 ‘cat /var/run/php-fpm.pid’
现在开始配置systemctl启动php-fpm
按照上面所述先打开php-fpm.pid,关闭php-fpm服务
在/usr/lib/systemd/system/目录下生成php-fpm.service文件,赋予754权限,vim修改:
[Unit]
Description=php-fpm
After=syslog.target network.target
[Service]
Type=forking
PIDFile=/var/run/php-fpm.pid
ExecStart=/usr/local/php/sbin/php-fpm
ExecReload=/bin/kill -USR2 MAINPIDExecStop=/bin/kill−INTMAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
[Unit]部分主要是对这个服务的说明,内容包括Description和After,Description用于描述服务,After用于描述服务类别
[Service]部分是服务的关键,是服务的一些具体运行参数的设置,这里Type=forking是后台运行的形式,PIDFile为存放PID的文件路径,ExecStart为服务的具体运行命令,ExecReload为重启命令,ExecStop为停止命令,PrivateTmp=True表示给服务分配独立的临时空间,注意:[Service]部分的启动、重启、停止命令全部要求使用绝对路径,使用相对路径则会报错!
[Install]部分是服务安装的相关设置,可设置为多用户的
wq保存退出,执行如下命令生效
systemctl daemon-reload
systemctl start/reload/stop php-fpm.service 若发生报错,可执行systemctl status php-fpm.service查看报错原因,排查。
相关文章推荐
- CentOS下yum安装PHP,配置php-fpm服务
- MongoDB在CentOS 7上的systemctl服务配置
- MongoDB在CentOS 7上的systemctl服务配置
- centos 配置php-fpm和nginx的通信
- CentOS 7上利用systemctl添加自定义系统服务(转)
- CentOS6.5 添加php-fpm到系统服务(service)
- CentOS 6.X 配置Nginx支持php-fpm模块
- centos 下编译安装nginx + php 配置nginx+php-fpm
- Linux将php-fpm配置成服务
- 当配置systemctl restart nfs-server.service时,不能正确重启服务该怎么办?
- linux7下centos6.8版本完全编译php7.17与nginx --后续,配置nginx.conf与php-fpm.conf,www.conf
- CentOS 7.0 服务管理 – systemctl 命令
- centOS5.6 下的nginx+mysql+php+php-fpm安装与配置
- CentOS 5.2,Linux 2.6+ 内核 ,Apache+MySQL+PHP 安装及基本配置过程记录 && 将apache安装为系统服务
- 在centos7下使用systemctl加入自建服务
- docker centos 无法用systemctl 启动服务的问题
- centos7.2环境nginx+mysql+php-fpm+svn配置walle自动化部署系统详解
- 在CentOS 7上利用systemctl添加自定义系统服务
- 在CentOS 7上利用systemctl加入自己定义系统服务
- CentOS 7 上systemctl 的用法(注意不是多个容器服务开机启动)