我有一个 Web 可访问的 PHP 脚本,它使用 shell 命令将 PDF 拖放到文本中。我通过 MacPorts 安装了 Poppler,并且正在使用 pdftotext。我能够从 CL 成功运行命令,并且在将 PHP 脚本中的完整路径提供给“/opt/local/bin/pdftotext”时。所以,我知道我的 $PATH 是正确的并且权限是足够的,但是当我尝试在 exec() 中简单地执行“pdftotext”时,我仍然得到 127 的退出状态:找不到命令。
我已经尝试了如何将路径添加到 Apache PATH 变量?和http://lists.apple.com/archives/macos-x-server/2008/Sep/msg00433.html。我修改了 /etc/paths 和 /etc/profile,并添加了 /etc/paths.d/macports 都指向“/opt/local/bin”。setenv、apache_setenv 等也都没有效果。
我正在为我的本地开发使用 MAMP(我认为是 1.9)安装,OSX 10.6,PHP 5.3.5,我知道的一切都落后了:-) ...我的 $PATH 被修改为指向 MAMP bin/php