📜  laravel Horizon 没有自动运行 - PHP (1)

📅  最后修改于: 2023-12-03 15:02:35.054000             🧑  作者: Mango

Laravel Horizon 没有自动运行 - PHP

如果你正在使用 Laravel Horizon,但发现它没有自动运行,这里是一些可能的解决方案:

  1. 检查队列工作程序是否在运行

在本地开发环境中,可以通过运行以下 Artisan 命令来启动队列工作程序:

php artisan queue:work

如果队列工作程序不在运行,Horizon 将无法自动运行任务。确保在生产环境中正确配置了队列工作程序。

  1. 检查 Horizon 配置

确保在 config/horizon.php 中正确配置了 Redis 和 supervisord。如果你使用其他队列连接,则需要相应地配置。

  1. 检查 Horizon 的 supervisord 配置文件

在应用程序的 supervisor.conf 文件中,确保已根据 Laravel 文档中的说明正确配置了 Horizon 队列工作程序。

例如,以下 supervisor.conf 文件配置监视器,它可以启动 8 个队列工作程序:

[program:horizon]
process_name=%(program_name)s
command=php /path/to/artisan horizon
autostart=true
autorestart=true
user=www-data
numprocs=8
redirect_stderr=true

确保 Horizon 的 supervisord 配置文件与你的应用程序匹配。

  1. 检查队列和任务

在 Horizon 的管理面板中,确保你有可用的队列和任务。如果没有可用的队列或任务,Horizon 将无法自动运行任务。

如果你遇到了问题,可以在 Laravel 论坛 上寻求帮助,并提供有关你的 Laravel 和 Horizon 配置的更多详细信息。