fred55rus
@fred55rus

Как перезапустить nginx через php на debian?

У меня есть команда в php скрипте, которая должна перезагружать конфиг nginx:
var_dump(exec("/usr/local/nginx/sbin/nginx -s reload 2>&1"));

однако после запуска скрипта в браузере, перезагрузки конфига не происходит, и я получаю на экране такое сообщение:
string(85) "2017/08/14 08:32:36 [alert] 7919#0: kill(7676, 1) failed (1: Operation not permitted)"

В чём проблема и как её решить?
  • Вопрос задан
  • 714 просмотров
Пригласить эксперта
Ответы на вопрос 3
fred55rus
@fred55rus Автор вопроса
Всё, я добился своего.
Мой скрипт запускался под пользователем, у которого нет прав (www-data).
Чтобы скрипт запустился, я установил модуль sudo и в его конфиге (visudo) добавил строчку: www-data ALL=NOPASSWD: ALL
Перед самой командой я теперь приписываю sudo -S и она отрабатывает.
Ответ написан
Комментировать
Konstantin18ko
@Konstantin18ko
Стоматолог
Перевод: операция не дозволена.
Может не хватает прав?
Ответ написан
Maksclub
@Maksclub Куратор тега PHP
maksfedorov.ru
вы уверенны, что не www-data запускает скрипт?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы