셸에서 antiword를 putty로 호출했는데 정상적으로 작동했습니다. 그러나 shell_exec()를 사용하여 호출하면 항상 빈 문자열이 제공됩니다. 다음은 내가 사용한 코드입니다 :안티 셸 명령이 PHP를 통해 올바르게 작동하지 않습니다.
$ file = "IS_BT_KLVZ_MSI_001.doc";
$ content = shell_exec ("/ usr/local/bin/antiword/usr/local/apache/htdocs/dokuman_sorgusu/documents/$ file");
var_dump ($ content);
한 포럼에서 정확한 문제가보고되었습니다. 이 문제가있는 사람은이 문제를 해결했다고 말합니다. 여기에 인용입니다 :
"예, 그것은 맵 파일의 접근으로 밝혀졌다 - 나는 권한을 변경하면 그들이 읽을 세계 아니었다는 , 그것은 큰 일 모두 감사합니다."
을하지만 , 나는 그가 어떻게 문제를 해결했는지, 그리고 내가 어떻게 앤트 워드의지도 파일에 접근하여 허용 할 수 있는지에 대해 간과하지 않았다.
문서의 MOD를 변경하고 있지만/ust/local/bin/antiword가 사용하는지도 파일의 MOD를 변경해야합니다. 안티 단어가 PHP 코드를 통해 추가 맵 파일을 사용할 수 없기 때문에 내 PHP 코드에서 앤티 워드 명령을 올바르게 실행할 수 없습니다. 그러나 명령 셸에서는이를 호출 할 때 앤티 워드가 완벽하게 작동합니다. –