运营凌晨的时候录入规则,发现录入的规则有异常,查看得知获取的时间异常
默认linux的时区使用了 UTC
而中国的时区是CST
因为我是使用docker镜像上运行php,所以得去镜像里面更新一下
进入镜像
docker -it php-fpm /bin/bash
更新时间
1. 安装ntpdate工具
sudo apt-get install ntpdate
2. 设置系统时间与网络时间同步
ntpdate cn.pool.ntp.org 或者 sudo ntpdate time.stdtime.gov.tw
#cn.pool.ntp.org是位于中国的公共NTP服务器
更新时间失败
root@6fc515dfb754:~# ntpdate us.pool.ntp.org
3 Nov 09:30:06 ntpdate[966]: Can't adjust the time of day: Operation not permitted
cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
php的配置
php.ini
[Date]
date.timezone = "asia/shanghai"
代码控制
<?php
date_default_timezone_set('Asia/Shanghai');
终所述,必须严格查看一下环境上的时间。