我使用putty在shell中调用了antiword,它工作正常。但是,当我使用shell_exec()调用它时,它总是给出空字符串。这是我使用的代码:
$文件= “IS_BT_KLVZ_MSI_001.doc”;
$ content = shell_exec(“/ usr / local / bin / antiword / usr / local / apache / htdocs / dokuman_sorgusu / documents / $ file”);
的var_dump($内容);
在一个论坛中,我看到了报道的确切问题。有这个问题的人说他解决了这个问题。这是引用:
“是的,结果是地图文件的可访问性 - 它们 不是世界可读的, 一旦我改变了权限,它就很有效。谢谢所有“
但是,我并没有理解他是如何解决这个问题的,以及我如何能够达到并允许那些反对词的地图文件。
答案 0 :(得分:0)
来自shell ..试试这个
# chmod o+r /usr/local/apache/htdocs/dokuman_sorgusu/documents/IS_BT_KLVZ_MSI_001.doc
答案 1 :(得分:0)
Web服务器通常以“nobody”用户身份运行,该用户具有最小权限,并且只是一个组(“nogroup”)的成员。
您的地图文件很可能设置为模式0640(-rw-r -----),属于您的登录用户可以访问的组,但Web服务器没有。
因此,使地图文件具有世界可读性,允许Web服务器打开它们,就像登录用户一样,具有更多权限,已经可以。