Выполнить клиентскую команду Asterisk с переполнением стека

Я пытаюсь выполнить клиентскую команду Asterisk с PHP, чтобы отобразить с помощью HTML. Я обычно делал это нормально. Когда сервер был перезагружен, я обычно давал 777 разрешений на файл «/var/run/asterisk/asterisk.ctl», а затем я мог запустить команду и отобразить ее с помощью PHP и HTML.

Теперь я делаю все эти шаги, но когда я пытаюсь отобразить команду, ничего не отображается, и Asterisk не возвращает никакого сообщения. Команда, которую я пытаюсь выполнить с помощью PHP:

exec('sudo asterisk -rx "sip show peers"',$data);

Переменная $ данных ничего не возвращает.

1

Решение

Я думаю, что сначала у вас есть проверка «каков путь к вашей учетной записи apache».

Это действительно плохо apache см. / Usr / sbin /. Так что вам нужно использовать полный путь к звездочке

Второе, что вы должны проверить — разрешает ли ваш sudo (/ etc / sudoers) ДЕЙСТВИТЕЛЬНО запускать asterisk для пользователя apache (или никого, в зависимости от ваших настроек).

0

Другие решения

Наконец-то я смог это решить. Остался вопрос разрешений.
По-видимому, вы не можете использовать предварительную команду «sudo». Поэтому я удалил его, и онлайн-консоль пользователей снова появилась на PHP.

Спасибо за вашу помощь!

0