Cron Jobs没有遵循WHM /服务器时区

时间:2019-02-19 20:02:48

标签: php datetime cron timezone

我有一个来自vultr的专用云服务器。在WHM中,我已将服务器时区设置为亚洲/加尔各答(印度时间)。另外,在我的cPanel中(通过multiPHP INI编辑器),我将时区设置为亚洲/加尔各答。

要测试我的时区,我将其保存在php文件中-

date_default_timezone_set("Asia/Kolkata");
$script_tz = date_default_timezone_get();
if (strcmp($script_tz, ini_get('date.timezone'))){
   echo 'Script timezone differs from ini-set timezone.';
} else {
   echo 'Script timezone and ini-set timezone match.';
}

所以我可以看到我的脚本时区和ini-set时区是相同的,并且匹配。 phpinfo()还将我的日期/时区显示为亚洲/加尔各答

但是

现在,我想每天在午夜(亚洲/加尔各答)进行一次cronjob,我的cronjob设置为-

 Min |Hour | Day  | Month | Weekday |  Command
-----+-----+------+----- -+---------+------------------------------------------+
 0   |  0  |  *   | *     |   *     | /usr/local/bin/php /home/namehere/public_html/cron_test.php

上面的cron运行良好,但在我想要的时区(亚洲/加尔各答)却无法正常运行。我认为它可以在UTC上运行。

为什么即使在我的WHM /服务器时区为Asia / Kolkata之后,cronjob也没有关注它?我在哪里做错了。请指导我解决此问题。

1 个答案:

答案 0 :(得分:0)

date命令在SSH控制台中输出什么?

复制时区文件。

cp /usr/share/zoneinfo/Asia/Kolkata /etc/localtime