如何在Hostinger上运行Laravel Cron Job并配置自定义命令?
在Hostinger上配置Laravel调度器的完整步骤
1. 先完成自定义命令的注册
首先确认你的app/console/commands/realtime.php命令类已在app/Console/Kernel.php中注册:
protected $commands = [ \App\Console\Commands\Realtime::class, ];
同时确保命令类里定义了唯一的$signature(比如'realtime:execute'),这是后续调用命令的标识。
2. 配置Laravel调度规则
同样在Kernel.php的schedule方法中,添加你的任务调度逻辑,示例:
protected function schedule(Schedule $schedule) { // 按需求设置执行频率,比如每分钟执行一次 $schedule->command('realtime:execute')->everyMinute(); }
这里直接用命令签名,不需要写文件路径。
3. 在Hostinger后台设置Cron Job
Hostinger的Cron Job入口在主机面板的「高级」>「Cron Jobs」:
- 选择执行频率:必须设置为每分钟一次(因为Laravel调度器需要每分钟触发一次,再内部按你定义的规则执行任务)
- 在「Command」输入框填写Laravel调度器启动命令,替换为你的实际项目路径:
cd /home/你的主机用户名/项目根目录 && php artisan schedule:run >> /dev/null 2>&1
示例路径:如果Laravel项目放在
public_html下,路径类似/u123456/public_html
关于直接运行自定义命令的说明
如果在Hostinger的终端或运行框里手动执行你的自定义命令,不需要写文件路径,直接用命令签名即可:
php artisan realtime:execute
如果不在项目根目录执行,需要先切换路径:
cd /项目根目录 && php artisan realtime:execute
常见问题排查
- 确认Hostinger的PHP版本和你的Laravel版本兼容,可在面板「PHP配置」中切换
- 检查
storage、bootstrap/cache目录的写入权限,避免任务执行失败 - 手动执行
php artisan schedule:run测试,查看storage/logs/laravel.log确认任务是否正常触发
内容的提问来源于stack exchange,提问作者quad que
相关产品推荐
相关产品推荐

