【发布时间】:2013-02-06 00:14:09
【问题描述】:
我正在使用 Zend 框架和 phantomJS 为我工作的网站渲染图像。我有一个作业侦听器脚本,它循环并在队列中查找作业。找到工作后,它使用来自工作消息的数据来构造 phantomJS 命令并通过以下方式执行命令 php 的 EXEC 命令。
如果我自己从命令行启动作业侦听器,则此过程非常有效。但是,如果守护程序用户(OS X 中的 Web 用户)尝试运行 phantomJS,则不会发生任何事情。没有错误信息,什么都没有。
我尝试了几件事,包括
1. 将这一行添加到 sudoers daemon ALL=NOPASSWD: /usr/bin/phantomjs
2.赋予phantomjs及其父目录777权限。
3. 赋予 phantomjs 的守护进程所有权
然而,尽管如此,我还是无法从 Daemon 用户那里获得执行 phantomJS。
如果有人能指出我正确的方向或添加一些建议,我将非常感激。
提前致谢,
丹
【问题讨论】:
-
试过用
--debug=yes运行phantomjs?另外,您是否尝试使用 CLI 中的 sudo 以守护程序用户身份运行它?sudo -u daemon phantomjs --debug=yes ...。可能是环境问题(NODE_PATH?)。
标签: php javascript permissions command-line-interface phantomjs