我试图在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'。
提前谢谢!
答案 0 :(得分:1)
当 report.log 文件存在并由您作为用户创建时,会发生这种情况。 PHP本身在名为_www
的系统中拥有自己的个人用户,当PHP启动执行exec()
命令时,系统没有_www
重写日志文件的权限。