在 Ubuntu 上修改 PHP 日志文件权限,通常取决于你用的是 PHP-FPM 还是 Apache + mod_php,以及日志文件在哪里。下面按常见情况说明。
php --ini
常见配置:
error_log = /var/log/php/php_errors.log
或者:
error_log = /var/log/apache2/php_errors.log
ls -l /var/log/php/
ls -l /var/log/apache2/
假设日志文件是:
/var/log/php/php_errors.log
sudo chmod 664 /var/log/php/php_errors.log
PHP-FPM 一般运行用户是 www-data:
sudo chown www-data:www-data /var/log/php/php_errors.log
如果是 Apache:
sudo chown www-data:adm /var/log/php/php_errors.log
sudo chown -R www-data:www-data /var/log/php
sudo chmod 755 /var/log/php
grep -R "user" /etc/php/*/fpm/pool.d/www.conf
一般是:
user = www-data
group = www-data
sudo mkdir -p /var/log/php
sudo chown www-data:www-data /var/log/php
sudo chmod 750 /var/log/php
Ubuntu 一般不用 SELinux,但若有 AppArmor 限制,可检查:
sudo aa-status
如果 PHP 写不了日志:
sudo tail -f /var/log/php/php_errors.log
sudo systemctl restart php8.1-fpm
sudo systemctl restart apache2
777644 或 664750 或 755www-data如果你愿意,可以告诉我:
我可以给你更精确的命令。