php exec внутри exec / вложенный exec

0

Если я уже запускаю код в фоновом режиме с помощью exec и внутри него, я вызываю для другого exec.

Является ли это возможным? Если да, нужны ли специальные разрешения?

У меня есть ошибка (и я подозреваю, что в ней был встроенный exec):

exec() has been disabled for security reasons

Регулярный exec включен и работает.

Теги:
permissions
exec

2 ответа

1
Лучший ответ

Технически возможно иметь exec в вашем exec, но похоже, что вы используете разные конфигурации. Обычно PHP имеет разные наборы (Apache и CLI) файлов php.ini (которые могут быть сконфигурированы так, чтобы вообще отключить функцию exec.

Я предполагаю, что ваш первый вызов exec происходит от apache, который затем вызывает скрипт php в командной строке. Вторая, похоже, имеет другую конфигурацию и поэтому запрещает вызов exec. Поэтому лучше взгляните на /etc/php, если есть разные настройки php.inis.

  • 0
    Спасибо за ответ, Тоби, у нас есть только один набор php.ini на наших серверах. Также простые проверки, такие как: // php if (exec ('echo EXEC') == 'EXEC') {echo 'exec works'; } Показывает, что exec работает правильно из командной строки. Я продолжу копать.
0

Можете ли вы поделиться своим кодом.... Трудно определить, есть ли какие-либо проблемы, не глядя на код. Если у вас есть доступ к использованию exec не должно быть проблем с использованием exec внутри другого exec. Это ваш локальный хост или общий хостинг? Большинство разделяемых хостов отключить exec из соображений безопасности.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню