2013-07-26 3 views
0

У меня есть проект, над которым я работаю, и мне требуется управлять (останавливать, запускать, перезапускать) скрипт с помощью веб-интерфейса. Этот скрипт был запущен как задание cron при загрузке.Управление процессами с помощью веб-интерфейса PHP

Проблема в том, что сценарий должен запускаться с правами доступа root. Есть ли способ сделать это несколько надежно с помощью PHP/Apache?

Если нет, то как я могу управлять этим скриптом с помощью веб-интерфейса?

ответ

0

я не смог получить shell_exec метод работы, так что я создал таблицу в базе данных и обновлен значение в этой таблице с PHP. У меня есть сторожевой таймер Python, который работает с помощью Cron для проверки значения в этой таблице. Если он обнаруживает, что команда запуска скрипта отправлена, она запускает скрипт или выполняет одно из нескольких действий. Это хорошо работает, и избегает использования спорного УИП, и апач не нуждается в каких-либо специальных разрешений.

0

Вы можете использовать исполняемый файл для управления скриптом и запускать его с PHP-страницы с помощью shell_exec. Тогда это исполняемый файл, который должен иметь SETUID как root.

В Linux это работает только для родного исполняемого не оболочек сценариев см этого обсуждения: How to run a script with root authority in Linux

+0

Спасибо Дэйв. Это привело меня к правильному направлению. Есть ли у вас совет по запуску скрипта python с исполняемым файлом? Предпочтительный C++? Все проведенные мной исследования вызывают кажущиеся излишне сложными ответы. Моя мысль - это PHP-> C++ исполняемый файл -> python.py и «закрыть» исполняемый файл C++. Должно быть легко? – Butters

Смежные вопросы