php 服务的例子,php-fpm添加service服务的例子php实例
PHP-FPM 配置为系统服务:一篇平滑启动与管理的实操指南 对于许多服务器管理员来说,让Nginx通过FastCGI来运行PHP,相比传统的Apache集成方式,优势相当明显。性能更好,资源管理也更独立。有个值得关注的消息是,PHP 5.4版本极有可能将PHP-FPM补丁直接集成到内核中。这意味着
PHP-FPM 配置为系统服务:一篇平滑启动与管理的实操指南

对于许多服务器管理员来说,让Nginx通过FastCGI来运行PHP,相比传统的Apache集成方式,优势相当明显。性能更好,资源管理也更独立。有个值得关注的消息是,PHP 5.4版本极有可能将PHP-FPM补丁直接集成到内核中。这意味着,未来在Nginx平台上运行PHP会变得更加轻松便捷。今天,我们就来具体聊聊,如何将源码安装的PHP-FPM配置成系统服务,实现平滑启动与管理。
为何需要手动配置服务?
如果你使用的是PHP 5.3.2之后的版本,并且是源码编译安装的,可能会发现一个变化:之前常用的 php-fpm (start|restart|stop|reload) 这套命令不再被支持了。那么,如何让它像其他系统服务一样,用标准的 service 命令来管理呢?其实步骤并不复杂。
第一步:修改PHP-FPM主配置
首先,需要编辑PHP-FPM的配置文件,通常是 /usr/local/php54/etc/php-fpm.conf。找到其中一行:;pid = run/php-fpm.pid。这行开头的分号表示注释,我们的任务就是去掉这个分号,让它生效。这一步是为了让PHP-FPM将其进程ID写入一个固定的文件,这是服务管理脚本能够识别和控制它的关键。
第二步:获取并放置服务管理脚本
源码编译安装PHP后,会在源代码目录里生成一系列有用的文件。我们需要找到其中一个名为 init.d.php-fpm 的脚本。它通常位于 /usr/local/src/php54/sapi/fpm/ 这个路径下。直接将它复制到系统的服务管理目录:
cp /usr/local/src/php54/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
第三步:设置权限并添加为系统服务
复制完成后,这个脚本还没有执行权限。通过下面这条命令赋予它可执行权限:
chmod +x /etc/init.d/php-fpm
接着,使用 chkconfig 工具将这个脚本添加到系统服务列表中:
chkconfig --add php-fpm
至此,配置工作就全部完成了。
如何管理PHP-FPM服务?
以后,你就可以像管理nginx或mysqld一样,使用熟悉的service命令来管理PHP-FPM了:
- 启动服务:
service php-fpm start - 停止服务:
service php-fpm stop - 重启服务:
service php-fpm restart - 平滑重载配置(不中断请求):
service php-fpm reload
总结
通过以上几个简单的步骤,我们就把源码安装的PHP-FPM成功配置成了一个标准的系统服务。这样一来,服务管理变得规范统一,也便于实现开机自启,对于服务器运维的标准化和自动化非常有帮助。希望这篇实操指南能切实解决你在部署中遇到的问题。
(注:文中提及的路径如 /usr/local/php54 需根据您实际的PHP安装目录进行调整。)


































