1

Ubuntu10.04 の Apache2 で PHP で latex を呼び出そうとしています。

$output  = exec("latex ".$filename, $return_var);

しかし、それは機能せず、次のように出力されます。

...
 [2] => ! I can't write on file `report.log'.
...

file_put_contents() を呼び出して、そのフォルダーにファイルを書き込むことができます。また、グループ www-data に自分自身を追加しました。

また、端末で「latex report.tex」を「www-data」として使用できます。PHP exec('whoami') は 'www-data' を返します。そして、そのフォルダと report.tex のパーミッションは「777」です。

前もって感謝します!

4

1 に答える 1

1

report.logファイルが存在し、ユーザーとして作成された場合に発生します。PHP はネイティブにシステム内に独自の名前を持つ個人ユーザーを持っており_www、PHP が実行コマンドを開始すると、システムにはログ ファイルを書き換えるexec()権限がありません。_www

于 2013-10-26T02:39:51.187 に答える