У меня есть php-файл, размещенный на сервере apache в Ubuntu. Все работает отлично, кроме shell_exec('myscript.sh')
.shell_exec не работает с .sh скриптами
Если я выполняю что-либо вроде shell_exec('dir')
, shell_exec('ls')
и т. Д., Он отлично работает. Но только когда я выполняю простой скрипт оболочки через shell_exec
, он не работает.
Для простоты я поставил команду echo
в сценарий оболочки. Тот же скрипт работает, когда я выполняю через терминал. Как:
# sh myscript.sh // works perfectly fine
Но не из PHP, ниже мой PHP код
<?php
$result = shell_exec('myscript.sh');
echo $result;
?>
Примечания:
- Безопасный режим выключен
shell_exec
не существует в списке disable_functions- Оба файла php и .sh находятся в одной папке
Благодаря
.sh файл помечен как исполняемый файл и у пользователя веб-сервера есть разрешения на выполнение? Вы используете './Script.sh'? – AbraCadaver
, так что мне теперь делать? любые предложения – jazean
Попробуйте сделать свой 'shell_exec' * точно * таким же, как при попытке вашего терминала:' shell_exec ('sh myscript.sh') '. –