Если я уже запускаю код в фоновом режиме с помощью exec и внутри него, я вызываю для другого exec.
Является ли это возможным? Если да, нужны ли специальные разрешения?
У меня есть ошибка (и я подозреваю, что в ней был встроенный exec):
exec() has been disabled for security reasons
Регулярный exec включен и работает.
Технически возможно иметь exec в вашем exec, но похоже, что вы используете разные конфигурации. Обычно PHP имеет разные наборы (Apache и CLI) файлов php.ini (которые могут быть сконфигурированы так, чтобы вообще отключить функцию exec.
Я предполагаю, что ваш первый вызов exec происходит от apache, который затем вызывает скрипт php в командной строке. Вторая, похоже, имеет другую конфигурацию и поэтому запрещает вызов exec. Поэтому лучше взгляните на /etc/php, если есть разные настройки php.inis.
Можете ли вы поделиться своим кодом.... Трудно определить, есть ли какие-либо проблемы, не глядя на код. Если у вас есть доступ к использованию exec
не должно быть проблем с использованием exec
внутри другого exec
. Это ваш локальный хост или общий хостинг? Большинство разделяемых хостов отключить exec из соображений безопасности.