代码:
<?php
error_reporting(E_ALL);
$im = imagecreatefrompng("/var/www/banner.png");
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
有效的命令:
sudo -u www-data php banner.php > test.png
php banner.php > test.png (as root)
这些产生的文件可以通过Web浏览器看到。有什么想法吗?
/var/log/apache2/error.log
中没有任何内容设置display_errors = On修复了问题。 将其重新设置为关闭并重新启动也可以解决问题 似乎现在修复了
答案 0 :(得分:0)
由于使用root apache创建的文件或目录没有相应的权限,因此您在此处发生了权限问题
如果权限是问题,您可以执行以下操作:
chown nobody:nogroup -R /var/www/
答案 1 :(得分:0)
问题在打开display_errors,重新启动apache,再次关闭然后重新启动后进行了排序。