www-data не может быть exe c sudo cmd даже уже установил NOPASSWD: / patch / to / script в visudo - PullRequest
0 голосов
/ 20 марта 2020

Я хочу выполнить shell exe c, чтобы запустить nodejs скрипт на моем сайте с php, вот мой код

exec("cd /var/www/html/nodejs/ && sudo node test.js");

, но я получаю вывод "sudo: нет tty присутствует и нет Программа askpass указала "

, даже если я уже добавил это в файл sudoer, используйте visudo

www-data ALL=(ALL) NOPASSWD: /var/www/html/nodejs/

также www-data ALL=(ALL) NOPASSWD: /var/www/html/nodejs/test.js

, но я все еще получаю sudo: no tty present and no askpass program specified

Если я установлю www-data ALL=(ALL) NOPASSWD:ALL эту работу, но это небезопасно, я бы этого не сделал

Может кто-нибудь помочь мне, скажите, где я не прав ??? застрял здесь около 1 часа ,,, я думаю, что это должно быть на основе работы

https://serverfault.com/a/554030 но это не сработало на меня,

причина, почему я использую sudo, потому что test. js запускает другой сценарий дочернего процесса. Если я не использовал команду root (www-data), я получаю сообщение об ошибке undefined, даже если они существуют, с командой root отлично работает

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...