我有一个 PHP 脚本,它调用 exec() 来执行将 PDF 转换为 JPG 的命令。该命令在 bash 中运行良好。
为了抢占您最初的故障排除猜测,请注意以下事项:
- 安全模式=关闭
- 包含 PDF 和脚本的目录的权限设置为 777,该目录也是写入 JPG 的位置。
- 我传递给 exec() 的命令明确指向正在使用的二进制文件(例如 /usr/local/bin/convert)。
- 显示错误=开
- 错误报告=E_ALL
- 禁用功能 = [空白]
- 我正在回显 exec() 的输出,但它什么也没返回。默认情况下运行的命令不返回任何内容。
当我从浏览器调用这个 PHP 脚本时(访问http://www.example.com/script.php),exec() 不执行它的参数。
重要的:我知道我的脚本或构建 bash 命令的方式没有问题,因为在 bash 中,我可以使用“php”执行脚本并且它可以工作(例如“php script.php”转换文件)
我也尝试过用 system() 替换 exec() 。
最后,我过去曾经遇到过这个问题,但不记得我是如何解决它的。
我知道我遗漏了一些东西,所以我希望其他人也像我一样经历过这种情况并记住如何解决它!
预先感谢您提供的任何帮助。
Alex
Add 2>&1
到命令末尾,将错误从 stderr 重定向到 stdout。这应该可以清楚地说明出了什么问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)