Если вы говорите, что он работает на терминале, а не на apache, то файл php.ini
в apache может отключить использование shell_exec()
.
См. http://www.php.net/manual/en/ini.core.php#ini.disable-functions
Файл вашего * Apache php.ini
может выглядеть примерно так:
disable_functions=exec,passthru,shell_exec,system,proc_open,popen
Удалите shell_exec
из этого списка и перезапустите веб-сервер, хотя это представляет угрозу безопасности, и я не рекомендую его.