PHP-FPM 仅在 Fedora 20 上作为系统服务运行时才会出错。(未找到文件/未找到主脚本)

PHP-FPM 仅在 Fedora 20 上作为系统服务运行时才会出错。(未找到文件/未找到主脚本)

我正在尝试在 Fedora 20 机器上安装 NGINX 和 PHP-FPM,但出现了“文件未找到/主脚本未知”错误仅有的当启动 php-fpm 作为系统服务时。

我在 NGINX 中使用默认设置,其中包含默认的 fastcgi.conf。
(使用fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;:)

以下是相关的 nginx.conf:

root   /var/www/index;
index  index.html index.php index.htm;

location ~ \.php$ {
          try_files      $uri = 404; 
          fastcgi_pass   unix:/var/run/php5-fpm.sock;
          fastcgi_index  index.php;
          include        fastcgi.conf;
}   

现在,当我直接从 shell(以 root 身份)启动 php-fpm 时,一切都运行正常,但是当我使用启动 php-fpm 时,systemctl start php-fpm.service出现“找不到文件/主脚本未知”错误。

这是 php-fpm.service 定义:

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

[Service]
Type=notify
PIDFile=/run/php-fpm/php-fpm.pid
EnvironmentFile=/etc/sysconfig/php-fpm
ExecStart=/usr/sbin/php-fpm --nodaemonize
ExecReload=/bin/kill -USR2 $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target

有谁知道为什么 php-fpm 通过 systemd 启动时会表现不同?(我非常困惑,特别是因为 php-fpm 正在生成工作进程,并且从 shell 启动和通过 systemd 启动之间应该没有任何区别。)

我没有在 fpm 池配置中使用任何 chroot 或 chdir 设置。

任何帮助都将不胜感激!谢谢 Marcus

相关内容