在我们的开发服务器上,我们允许多个开发人员访问服务器以git pull
他们的更改。通常,这需要运行sudo systemctl reload php-fpm
(或发送USR2
等)。但是,我们希望允许他们在PHP-FPM中重新加载更改的代码,而无需sudo
。
当我以前使用Ruby时,你可以通过touch
restart.txt
目录中名为tmp
的文件来完成我正在寻找的内容。
PHP-FPM是否支持这样的东西?或者,是否仍允许reload
命令(或任何类似的发送USR2
的方法)而不sudo
?
答案 0 :(得分:4)
在/ etc / sudoers文件中将命令列入白名单时,您可能会在那里:
首先编辑sudoers文件:
sudo visudo
添加以下配置行:
user ALL=(root) NOPASSWD: systemctl reload php-fpm
将 user (在行的开头)替换为执行该命令的真实用户名。
这将授权用户以root身份调用sudo systemctl reload php-fpm
(无密码)。
答案 1 :(得分:0)
或者可以使用:
user ALL=(ALL) NOPASSWD: /usr/sbin/service php7.3-fpm *
7.3
的位置可能会有所不同,具体取决于您使用的php版本,user
是您的用户。