Я бегу PHP 5.4.9 на сервере Windows,Windows, PHP Exec/shell_exec с phantomjs всегда возвращает нулевой
Я попытался запустить все команды сценария в PHP (EXEC, shell_exec, система, proc_open, PassThru). Кажется, все возвращаются пустым или нулевым.
Я добавил phantomjs как переменную PATH.
И работает phantomjs --version
в командной строке, и она возвращает 1.8.2
Хотя, когда я пытаюсь запустить
$return = exec("phantomjs --version")
или
$return = shell_exec("phantomjs --version", $output)
$return
всегда нуль и $output
пуст.
Я убедился IUSR и IIS_IUSRS пользователи имеют разрешение на запуск phantomjs.exe
Безопасный режим отключен в php.ini
Кроме того, я попытался запустить exec('ls') && exec('ipconfig /all')
, и те, выводить данные я ожидаю ,
Я не уверен, что еще попробовать.
Вы уверены, что phantomjs находится в пути оболочки существа exec() 'd сервером? просто потому, что он находится на пути вашей учетной записи, это может быть не на пути учетной записи IUSR_IIS. –
Попробуйте следующее и посмотрите, заполнены ли $ out или $ ret. $ out будет массивом. exec ('phantomjs --version'. '2> & 1', $ out, $ ret); – Gavin
Путь находится в переменной System Variables -> Path. –