Ubuntu Server 16安装Zabbix3.4:找不到Apache配置设置PHP时区
解决Ubuntu Server 16上Zabbix 3.4的PHP时区错误问题
我之前也碰到过这个问题,Ubuntu 16.04上装Zabbix 3.4的时候,官方文档提的Apache配置文件确实有点隐蔽,不过不用慌,咱们直接从PHP配置入手就能搞定这个预检查里的时区错误:
1. 定位正确的PHP配置文件
Ubuntu 16.04中,给Apache用的PHP配置文件通常在这个路径:/etc/php/7.0/apache2/php.ini
(如果你的PHP版本不同,把7.0换成对应的版本号就行,比如5.6)
要是不确定具体路径,也可以用命令查询Apache加载的PHP配置文件:
sudo apache2ctl -t -D DUMP_INCLUDES | grep php
或者直接搜索Zabbix的Apache配置文件,它大概率在这些位置:
/etc/apache2/conf-available/zabbix.conf/etc/apache2/sites-available/zabbix.conf
2. 设置PHP时区
方法一:修改全局PHP配置(更稳妥)
打开找到的php.ini文件:
sudo nano /etc/php/7.0/apache2/php.ini
搜索date.timezone,找到类似下面的行:
;date.timezone =
去掉前面的分号注释,改成你所在的时区,比如:
date.timezone = Asia/Shanghai
(时区列表可以用timedatectl list-timezones命令查看)
方法二:修改Zabbix的Apache配置文件
如果找到Zabbix的Apache配置文件,里面应该有一段设置PHP时区的代码,把它改成正确的时区:
php_value date.timezone "Asia/Shanghai"
3. 重启Apache服务
修改完配置后,必须重启Apache才能生效:
sudo systemctl restart apache2
或者用旧的服务命令:
sudo service apache2 restart
4. 验证设置是否生效
可以快速验证一下:在/var/www/html目录下创建一个info.php文件:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
然后访问http://你的IP/info.php,搜索date.timezone,确认它已经变成你设置的时区。
之后刷新Zabbix的预检查页面,那个时区错误应该就消失啦!
内容的提问来源于stack exchange,提问作者Giox




