如何授予 PHP 脚本读取和写入目录中的日志文件的/var/log/
权限/var/
?
答案1
我想指出的是,授予写权限/var/log/
是馊主意。写入权限/var/log/
意味着攻击者可以覆盖您的任何日志,从而无法追踪对您服务器的攻击。如果您希望从 PHP 记录日志,请为您的 php 脚本日志创建一个单独的目录(例如, /var/log/php/
)并授予其写入权限,或者使用syslog() 及相关函数写入标准系统日志。
对于读取权限,您需要确定日志文件的创建者,并确保创建这些文件的权限允许正在运行 PHP 的用户读取它们。您可以手动更改它们,但下次轮换日志并创建新的日志文件时,您可能需要再次更改它们。
答案2
找出 php 以哪个用户身份运行,然后 chmod 以匹配的文件/目录。
快速而粗略的找出方法:
<?=exec('whoami');?>
答案3
最直接的方法之一是确保运行 PHP 脚本的用户具有所需的访问权限。您可以使用 chmod 修改权限,并使用 chown/chgrp 根据需要更改所有权。