【发布时间】:2013-01-09 10:11:16
【问题描述】:
我正在尝试将pdf 文件转换为文本文件。当我通过终端运行命令时,它工作正常,但是当尝试通过PHP 执行它时,它不起作用。
从过去四个小时开始,我陷入了这种情况,我在谷歌上花了很多时间,但没有可用的解决方案。任何机构都可以解决这个问题吗?
文件所有者 - 没有人
shell_exec('/usr/bin/pdftotext /opt/lampp/htdocs/foldername/filename.pdf');
谁能提供任何有用的解决方案?
我还尝试将usr 文件夹所有权从root 更改为nobody,并为文件夹及其上下文提供777 权限。
【问题讨论】:
-
当您从 PHP 文件执行 shell_exec 时,您是 apache 用户,也许 apache 在 /usr/bin/pdftotext 中没有权限?
-
如果你通过
exec运行它并查看$output,你会得到什么?应该类似于:exec('/usr/bin/pdftotext /opt/lampp/htdocs/foldername/filename.pdf',$output = array()); var_dump($output); -
执行后返回NULL
-
可能是权限被拒绝。
-
你可以
chown apache /usr/bin/pdftotext/但在此之前,停止 apache,server httpd stop然后 'su apache` 并检查命令
标签: php linux shell cakephp pdf