Я пытаюсь использовать PHP для exec() двоичного casperjs ,
exec('casperjs /var/www/mysite/application/phantomjs/test.js');
но я получаю ошибку
Fatal: [Errno 2] No such file or directory; did you install phantomjs?
CasperJS работает поверх PhantomJS, которые я вручную установил, и создал ссылку в /usr/local/bin/phantomjs и /usr/local/bin/casperjs . Так что я предполагаю, что casperjs вызывает phantomjs, когда он работает.
Однако он отлично работает, когда я ssh на сервер и запускаю
casperjs /var/www/mysite/application/phantomjs/test.js
Что пошло не так? Я думаю, что casperjs не может запускать phantomjs как веб-пользователя? Если это так, как это можно исправить?
Просто попробуйте вызвать команду exec с полным путем программы. Например
exec('/usr/local/bin/casperjs /var/www/mysite/application/phantomjs/test.js');
Также убедитесь, что вам разрешено выполнять эту программу через веб-сервер, особенно если вы используете php safe_mode on . Взгляните на safe_mode_exec_dir
У меня была такая же проблема, и я нашел здесь рабочее решение: https://groups.google.com/forum/?fromgroups=#!topic/casperjs/92yUM9O0XjA