温馨提示×

ubuntu php日志怎么配置

小樊
45
2026-09-21 17:40:59
栏目: 编程语言

在 Ubuntu 上配置 PHP 日志,通常分为 PHP 自身错误日志 和 Web 服务器(Apache/Nginx)相关日志 两部分。下面按常见场景说明。


一、PHP 错误日志配置(最常用)

1. 找到 php.ini 文件

php --ini

或

php -i | grep "Loaded Configuration File"

常见路径:

  • Apache:/etc/php/8.1/apache2/php.ini
  • CLI:/etc/php/8.1/cli/php.ini
  • Nginx + PHP-FPM:/etc/php/8.1/fpm/php.ini

(版本号按你实际安装调整,如 7.4 / 8.2)


2. 修改 php.ini 日志相关配置

编辑对应 php.ini:

sudo nano /etc/php/8.1/fpm/php.ini

关键配置项:

; 显示错误(开发环境开,生产环境关)
display_errors = Off

; 记录错误日志
log_errors = On

; 日志文件路径
error_log = /var/log/php/php_errors.log

; 错误报告级别
error_reporting = E_ALL

3. 创建日志目录并设置权限

sudo mkdir -p /var/log/php
sudo chown www-data:www-data /var/log/php
sudo chmod 755 /var/log/php

4. 重启服务

  • PHP-FPM:
sudo systemctl restart php8.1-fpm
  • Apache:
sudo systemctl restart apache2

二、Apache 下 PHP 日志

Apache 错误日志中也会包含 PHP 错误:

sudo tail -f /var/log/apache2/error.log

若想单独记录:

php_value log_errors 1
php_value error_log /var/log/php/apache_php_errors.log

放在虚拟主机或 .htaccess 中。


三、Nginx + PHP-FPM 日志

PHP-FPM 错误日志

sudo nano /etc/php/8.1/fpm/pool.d/www.conf
catch_workers_output = yes
php_admin_value[error_log] = /var/log/php/fpm-php.log
php_admin_value[log_errors] = On

重启:

sudo systemctl restart php8.1-fpm

Nginx 错误日志

sudo tail -f /var/log/nginx/error.log

四、开发环境快速调试(不推荐生产)

display_errors = On
error_reporting = E_ALL

五、常见排查命令

# 查看 PHP 日志
tail -f /var/log/php/php_errors.log

# 查看 PHP 配置
php -i | grep error_log

# 测试 PHP 是否写日志
<?php
error_log("test log");

如果你能告诉我:

  • Ubuntu 版本
  • PHP 版本
  • 用的是 Apache 还是 Nginx

我可以给你一份完全对应的配置文件示例。

0 踩