我正在 CentOS8 上设置多个 php 版本(本地和来自 remi repos)。安装后,本机 php-fpm(使用 php8.0)设置在 unix 套接字上,而 (remi) php74-php-fpm 将在 TCP 套接字上侦听。我通过设置改变了它:
listen = /run/php-fpm/php74.sock
...
listen.owner = nobody
listen.group = nobody
listen.mode = 0666
只要两个服务都在运行就可以了。但是,如果我停止这两个服务,然后仅启动 php74-php-fpm 套接字文件夹 (/run/php-fpm) 丢失并且服务失败。我在明显的地方 (/usr/lib/tmpfiles.d/*) 寻找文件夹创建,但那里没有提到。 我还插入了(通过 systemctl edit)这些行:
[Service]
RuntimeDirectory=php-fpm
RuntimeDirectoryMode=0755
在 php74-php-fpm.service 中,(这些行来自本机 php-fpm)推测他们会让 systemd 在启动时创建文件夹,但它没有发生。
因此问题 - 如何在启动 php74-php-fpm 时强制创建文件夹?我宁愿不使用 shell hacks 和一些东西,比如我相信本机 php-fpm 使用的是某种“标准”方法,我更喜欢这种方法。
TIA 和干杯。