You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 10 Artisan Cron执行时区警告问题求助

解决Laravel Cron任务时区警告问题

针对cPanel环境下Laravel 10.x通过Cron执行schedule:run时出现的PHP Warning: PHP Startup: Invalid date.timezone value '', using 'UTC' instead警告,提供以下几种可行方案:

  • 确认CLI模式PHP时区配置
    先执行命令查看当前CLI版本PHP的时区设置:

    /opt/alt/php82/usr/bin/php -i | grep date.timezone
    

    如果输出为空或不是Europe/Zagreb,说明CLI模式的PHP未加载到你设置的时区配置。

  • Cron命令中指定自定义php.ini
    找到你在cPanel中配置的自定义php.ini路径(通常在网站根目录,比如/home/your_username/public_html/php.ini),修改Cron命令为:

    /opt/alt/php82/usr/bin/php -c /home/your_username/public_html/php.ini artisan schedule:run >/dev/null 2>&1
    

    这样强制让PHP加载你的自定义配置文件。

  • 在Cron命令中直接设置时区
    修改Cron任务命令,通过PHP参数直接指定时区:

    /opt/alt/php82/usr/bin/php -d date.timezone=Europe/Zagreb artisan schedule:run >/dev/null 2>&1
    

    或者通过环境变量设置:

    export TZ=Europe/Zagreb && /opt/alt/php82/usr/bin/php artisan schedule:run >/dev/null 2>&1
    
  • 在Laravel调度内核中强制设置时区
    打开app/Console/Kernel.php,在boot()方法中添加时区设置代码:

    public function boot()
    {
        date_default_timezone_set('Europe/Zagreb');
        parent::boot();
    }
    

    这样Laravel启动调度任务时会强制覆盖PHP的时区设置,从根源避免警告。

内容的提问来源于stack exchange,提问作者Maka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 11:12:44