Я пытаюсь выполнить команду клиента Asterisk с PHP, чтобы отобразить с помощью html. Я обычно делал это нормально. Когда сервер был перезагружен, я использовал 777 разрешений для файла «/var/run/asterisk/asterisk.ctl», а затем я мог запустить команду и отобразить ее с помощью PHP и HTML.Выполнение команды клиента Asterisk с PHP
Теперь я делаю все эти шаги, но когда я пытаюсь отобразить команду, ничего не отображается, и Asterisk не возвращает никакого сообщения. Команда, я пытаюсь выполнить с РНР:
exec('sudo asterisk -rx "sip show peers"',$data);
переменных $ данных ничего не возвращает.
Что-нибудь в консоли звездочки? например. в 'asterisk -r' –
вы предоставили права на sudo без пароля на свой u-сервер вашего веб-сервера? если так, то судо, вероятно, скулит по поводу отсутствия терминала. И вы, вероятно, захотите перенаправить stderr, потому что '$ data' будет содержать только stdout. –
Команды sudo обычно запрашивают пароль. Вы можете отредактировать файл sudoers (с visudo) и добавить правило, которое позволяет пользователю веб-сервера запускать команду без пароля. Например: www-data ALL = NOPASSWD:/path/to/script –