我创建了一个这样的链接:
/var/log/httpd/access_log -> /var/www/html/mylog.txt
使用以下命令:
ln -s /var/log/httpd/access_log /var/www/html/mylog.txt
我已确保可以读取以下文件/目录(0666):
/var/
/var/log/
/var/log/httpd/
/var/log/httpd/access_log
/var/www
/var/www/html
/var/www/html/mylog.txt
但即便如此,当我尝试访问时,mylog.txt
仍然出现 403 错误:
禁止
您无权访问此服务器上的 /mylog.txt。
我尝试过其他方法,例如:
readfile("/var/log/httpd/access_log");
echo file_get_contents("/var/log/httpd/access_log");
然而,在 PHP 中,它们都返回 false。
我确信我已获得所有权限。我做错了什么?
答案1
默认情况下,www-data
是用户,与非 root 用户一样。您可能知道,只有 root 可以读取 httpd 访问日志,这意味着www-data
访问将被拒绝。您可以使用 cronjob 将日志复制到/var/www/html
或(不建议)以 root 身份运行 httpd。