PHP-FPM 日志的时区不同。PHP-FPM 日志中的时间比系统时间晚一个小时。PHP-FPM 中是否有配置时间/区域的选项?
系统:CentOS
# date
Mon Jul 9 17:33:10 BST 2012
# cat /etc/sysconfig/clock
ZONE="Europe/London"
# grep "date.timezone =" /etc/php.ini
date.timezone = Europe/London
# tail /var/log/php-fpm/error.log
[09-Jul-2012 16:21:58 UTC] PHP Notice: ...
答案1
PHP 目前仅以 UTC 格式记录。这是漏洞。
答案2
问题可能与以下名称的通用 WordPress 文件有关:
wp-includes/PHPMailer/PHPMailer.php
该文件使用了一个糟糕的 PHP 函数,名称为:gmdate()
该功能使用 UTC…
我已将其替换为 echo date('Ymd H:i:s'); 函数(大约第 928 行),并且还在文件的开头放置了指令:date_default_timezone_set('Myontinenet/MyCountry');。
这似乎解决了 PHP 错误日志的问题,不是记录当前时间,而是记录 UTC 时间。
我在所有域文件上搜索 stringerror_log ( 的用法时发现了问题。这是因为这是记录错误日志的 PHP 函数,而那些错误的错误日志来自某个地方……