Я хочу, чтобы перезагрузить мой Nginx после некоторых сценариев на моем PHP веб-приложения с exec_shell функции в PHP, как это:выполнить скрипт с PHP + Nginx
shell_exec('sudo sh /var/www/camva/subdomain.sh');
Этот код запуска после каждого запроса для перезагрузки Nginx на моем файл route.php.
Кроме того, мой файл оболочки subdomain.sh содержит:
#!/bin/bash
sudo /etc/init.d/nginx restart
Но я даю этот ответ после каждого запроса:
Reloading nginx ... fail !
Я не знаю, почему этот сценарий произошло, но я могу запустить этот команды в моем корне с командой терминала, такой же, как "sudo /etc/init.d/nginx restart"
, и дать правильный ответ о перезагрузке nginx!
Благодарим за помощь.
Вы добавили пользователя nginx и свою команду в файл sudoers? Взгляните на это http://stackoverflow.com/q/3166123/1301076 – rjdown