温馨提示×

PHP日志Ubuntu怎么配置

小樊
47
2026-07-21 17:09:40
栏目: 编程语言

Ubuntu 上配置 PHP 日志,一般分为 PHP-FPMApache/Nginx + PHP 两种常见场景。下面按最常用的方式给你一个清晰、实用的配置指南。


一、PHP 日志类型说明

PHP 日志通常包括两类:

  1. PHP 错误日志(error_log)
    • 语法错误、运行时错误等
  2. 应用自定义日志
    • 使用 error_log()syslog()

二、确认 PHP 版本(很重要)

php -v

或(FPM):

php-fpm -v

示例路径(以 PHP 8.1 为例):

/etc/php/8.1/

三、配置 PHP 错误日志(推荐方式 ✅)

1️⃣ 修改 php.ini

常见位置:

sudo nano /etc/php/8.1/fpm/php.ini
# 或(Apache)
sudo nano /etc/php/8.1/apache2/php.ini

2️⃣ 关键配置项

log_errors = On
error_log = /var/log/php/php_error.log
error_reporting = E_ALL
display_errors = Off

生产环境 display_errors = Off
开发环境 display_errors = On


四、创建 PHP 日志文件(必须)

sudo mkdir -p /var/log/php
sudo touch /var/log/php/php_error.log
sudo chown www-data:www-data /var/log/php/php_error.log
sudo chmod 644 /var/log/php/php_error.log

www-data 是 Ubuntu 下 Web 服务的默认用户


五、重启 PHP 服务

PHP-FPM

sudo systemctl restart php8.1-fpm

Apache

sudo systemctl restart apache2

Nginx

sudo systemctl restart nginx

六、测试 PHP 日志是否生效

创建测试文件:

<?php
error_log("This is a PHP test log message");

访问该页面后查看日志:

tail -f /var/log/php/php_error.log

七、Nginx + PHP-FPM 额外日志(常见)

Nginx 错误日志

/var/log/nginx/error.log

PHP-FPM 错误日志

; /etc/php/8.1/fpm/php-fpm.conf
error_log = /var/log/php/php-fpm.log

重启:

sudo systemctl restart php8.1-fpm

八、Apache + PHP 日志

Apache 错误日志通常包含 PHP 错误:

/var/log/apache2/error.log

如果想单独记录 PHP 错误,仍建议使用 php.ini 中的 error_log


九、常见问题排查

❌ 日志不生成?

检查:

  • log_errors = On
  • 日志文件权限
  • PHP-FPM / Apache 是否重启
  • 是否使用了正确的 php.ini

查看当前生效的 php.ini:

php --ini

十、推荐生产环境配置 ✅

log_errors = On
error_log = /var/log/php/php_error.log
display_errors = Off
error_reporting = E_ALL & ~E_NOTICE

如果你愿意,可以告诉我:

  • PHP 版本
  • Web 服务器(Apache / Nginx)
  • 系统是 Ubuntu 几?

我可以给你一份 完全针对你环境的配置方案

0