および(pdftotext.exe)を介してpdfをテキストに解析しようとしています。私のローカルホストではすべてうまくいきますが、サーバー上のすべてを移動しようとすると、問題が発生します。PHP
XPDF
まず、サーバーのいくつかの設定を確認しましたが、safe_mode はoffで、execは無効になっておらず、パーミッションはrwxrwxrwx
.
それから私はこれを試しています
$command = "\\\\149.223.22.11\\cae\\04_Knowledge-base\\tools\\pdftotext.exe -enc UTF-8 ". $fileName . " \\\\149.223.22.11\\cae\\04_Knowledge-base\\output.txt";
$result = exec($command,$output,$args);
echo shell_exec($command);
これは機能していません。調べる$result, $output,
と空ですが、$args は 1 を返します。これは、このドキュメントの Windows システム エラー コードによる不正な機能に対応しています。
コマンド全体は次のよう\\149.223.22.11\cae\04_Knowledge-base\tools\pdftotext.exe -enc UTF-8 \\149.223.22.11\cae\04_Knowledge-base\testpdf\04_egerland_final_paper.pdf \\149.223.22.11\cae\04_Knowledge-base\output.txt
になり、コマンドラインに直接入力すると機能します。
だから私は少しアイデアがありません。誰かヒントはありますか?
edit 20160201 - 追加の試行 だから私は追加のテストを行い、localhost から exec で同様のコマンドを実行しようとすると (ターゲット .exe ファイル、入力ファイルと出力ファイルは同じ場所にあり、サーバーではなく localhost を使用するだけです)、動作します。サーバー設定の違いを確認しています。ここで問題になる可能性があるのは、localhosts Server Api がApache 2.0 Handler であり、サーバーがCGI/FASTCGI であるかどうかです。