Ste*_*son 17 linux nginx php-fpm init.d amazon-linux
我正在运行 PHP-FPM 和 Nginx,偶尔出于某种原因,我必须重新启动服务器。一旦服务器再次运行,nginx 服务会自动启动,但是 PHP-FPM 不会。当我sudo /etc/init.d/php-fpm restart在重新启动后立即运行命令并获得结果时,可以看到这一点:
$ sudo /etc/init.d/php-fpm restart
Stopping php-fpm: [FAILED]
Starting php-fpm: [ OK ]
Run Code Online (Sandbox Code Playgroud)
这是预期的行为吗?使 PHP-FPM 自动启动的最佳方法是什么?是否有任何配置选项,或者我是否必须将命令添加到 Linux 启动脚本之一?
谢谢。
我刚刚在 Ubuntu 16.04 上遇到了这个问题,我把我的答案留在这里给 Google 的未来用户,他们偶然发现了这个问题。由于chkconfig主要针对 CentOS,因此它显然不存在于 Ubuntu 上。显然,要获得一个定制PHP(php-fpmSAPI)在启动下启动systemd,这是新的到Ubuntu 16.04(之前,新贵),它需要与超越只是删除了系统注册init.d脚本到/etc/init.d/。为了注册脚本,我运行了:
update-rc.d php-fpm defaults
Run Code Online (Sandbox Code Playgroud)
Areboot和随后的ps aux确认php-fpm确实是在启动时启动。它也被添加到/etc/init.d/.depend.start.
其他想法: Ubuntu Upstart 足够好,所以我update-rc.d在放置 init.d 脚本后不必运行- 它只是有效。完全忘记了那个命令。
小智 5
从 CentOS 7 开始,您只需通过 systemctl 启用服务:
systemctl enable php-fpm
Run Code Online (Sandbox Code Playgroud)
您可以通过以下方式检查它是否正在运行:
systemctl status php-fpm
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21797 次 |
| 最近记录: |