doujiao1538 2014-06-19 07:08
浏览 146
已采纳

使用exec()从PHP运行PhantomJS

I've got the following script:

#!/bin/sh
export DISPLAY=:0
phantomjs --version

It try to run it from the following PHP script:

<?php
$result = shell_exec('sh test.sh'); 
echo $result;
?>

This script return the following error:

[Thu Jun 19 10:31:31 2014] [error] [client] test.sh: line 3: phantomjs: command not found

I tried to run phantomjs -v by hand in a console, and it runs fine. I checked the PATH, and phantomjs is correctly defined and found.

The execution environment is a virtual Server with LiveConfig. Can someone help me understand what I'm doing wrong ?

  • 写回答

4条回答 默认 最新

  • dongque6377 2014-06-19 13:05
    关注

    Your PATH probably lacks the location for the phantomjs executable. PhantomJS is probably installed in /usr/local/bin so you need to add this to your PATH variable:

    #!/bin/sh
    export DISPLAY=:0
    PATH=$PATH:/usr/local/bin
    phantomjs --version
    

    To check what the current PATH is, you could begin the shell script with:

    #!/bin/sh
    echo $PATH
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?