php-fpm 作为 Centos 7 上的服务

php-fpm as service on Centos 7

php 7 个来源

正在尝试

systemctl enable php-fpm.service

获得

The unit files have no [Install] section. They are not meant to be enabled
using systemctl.
Possible reasons for having this kind of units are:
1) A unit may be statically enabled by being symlinked from another unit's
   .wants/ or .requires/ directory.
2) A unit's purpose may be to act as a helper for some other unit which has
   a requirement dependency on it.
3) A unit may be started when needed via activation (socket, path, timer,
   D-Bus, udev, scripted systemctl call, ...).

正在尝试

chkconfig --levels 235 php-fpm on

得到相同的日志:)

更新:

不知何故我设法从 chkconfig 开始,但我不记得是如何开始的。重新安装 OS 并使用 PHP 7.0.6-dev.

由于您正在编译自己的 PHP,因此需要创建 unit/service,您可以像以前一样通过 chkconfig 来完成,或者您可以尝试遵循一些我推荐的指南:

https://www.howtoforge.com/tutorial/how-to-install-php-7-on-debian/

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/sect-Managing_Services_with_systemd-Unit_Files.html

第一个教程中的示例文件:

[Unit]
Description=The PHP 7 FastCGI Process Manager
After=network.target

[Service]
Type=simple
PIDFile=/opt/php-7.0.3/var/run/php-fpm.pid
ExecStart=/opt/php-7.0.3/sbin/php-fpm --nodaemonize --fpm-config /opt/php-7.0.3/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

我看到更新后你已经解决了问题,但我会把它留在这里,因为它可以帮助更多人!

现在,对于 php 7.3,我在构建 php:

后使用了这种方法
1. cp /path-to-php-src/sapi/fpm/php-fpm.service /etc/systemd/system/php-fpm.service
2. systemctl enable php-fpm.service

文件内容与 Renato Mefi 的回答相似