美文网首页
systemctl start php-fpm报错Read-on

systemctl start php-fpm报错Read-on

作者: 网络小乙 | 来源:发表于2021-02-25 14:46 被阅读0次

    使用systemd管理PHP7的php-fpm服务时遇到无法正常启动的问题,php-fpm报错如下:

    systemd[1]: Started The PHP FastCGI Process Manager.
    php-fpm[26521]: [25-Feb-2021 09:24:08] ERROR: failed to open error_log (/usr/local/php/var/log/php-fpm.log): Read-only file system (30)
    php-fpm[26521]: [25-Feb-2021 09:24:08] ERROR: failed to post process the configuration
    php-fpm[26521]: [25-Feb-2021 09:24:08] ERROR: FPM initialization failed
    

    即使selinux是关闭状态,把文件/usr/local/php/var/log/php-fpm.log权限设为777,问题依然存在。

    • 问题原因
      php-fpm的systemd配置文件(/usr/lib/systemd/system/php-fpm.service)中,
      当ProtectSystem=true时php-fpm进程将以只读的方式挂载/usr、/boot目录;
      当ProtectSystem=full时php-fpm进程将以只读的方式挂载/usr、/boot和/etc目录。
    • 解决方法
      1)打开php-fpm的systemd配置文件/usr/lib/systemd/system/php-fpm.service,把ProtectSystem=true改成ProtectSystem=false,这种方式会对系统造成一定风险,生产环境不建议使用;
      2)修改php-fpm的配置文件php-fpm.conf,把error_log设置为除/usr、/boot、/etc以外的目录中的文件。

    相关文章

      网友评论

          本文标题:systemctl start php-fpm报错Read-on

          本文链接:https://www.haomeiwen.com/subject/vobyfltx.html