Laragon 本身不内置 RabbitMQ,需手动安装为 Windows 服务并启用管理插件;Laravel 通过 vladimir-yuldashev/laravel-queue-rabbitmq 扩展对接,需配置 .env 连接参数、注册服务提供器(Laravel 11)、发布队列配置,并用 queue:work 和管理界面验证消息收发。

一、在Laragon环境下启动RabbitMQ服务
注意:Laragon 不内置 RabbitMQ,需手动安装并作为 Windows 服务运行。
- 从 https://www.rabbitmq.com/install-windows.html 下载最新版 RabbitMQ Server(推荐 .exe 安装包)
- 安装时勾选 “Install RabbitMQ as a Windows service”(自动注册为系统服务)
- 安装完成后,打开 Laragon 主界面 → 点击右上角 “Services” → 找到 RabbitMQ 并启动(状态变绿)
- 验证是否就绪:浏览器访问 http://localhost:15672(默认管理界面),用账号
guest/guest登录(首次需启用插件:rabbitmq-plugins enable rabbitmq_management)
二、Laravel项目配置RabbitMQ驱动
用的是主流扩展包 vladimir-yuldashev/laravel-queue-rabbitmq,Laravel 10/11 都适用,但细节有差异。
- 执行安装:
composer require vladimir-yuldashev/laravel-queue-rabbitmq - 在
.env中写明连接信息(Laragon 本地常用默认值):QUEUE_CONNECTION=rabbitmqRABBITMQ_HOST=127.0.0.1RABBITMQ_PORT=5672RABBITMQ_VHOST=/RABBITMQ_USER=guestRABBITMQ_PASSWORD=guestRABBITMQ_QUEUE=default - Laravel 11 必须手动注册服务提供器:打开
config/app.php,在providers数组末尾加一行:VladimirYuldashev\LaravelQueueRabbitMQ\LaravelQueueRabbitMQServiceProvider::class, - 确认
config/queue.php的connections.rabbitmq配置存在且 driver 为rabbitmq(新版包会自动发布配置,若无则执行:php artisan vendor:publish --provider="VladimirYuldashev\LaravelQueueRabbitMQ\LaravelQueueRabbitMQServiceProvider")
三、测试队列是否真正跑通
别只信 php artisan queue:work rabbitmq 能启动,要验证消息能进能出。
- 创建一个简单任务:
php artisan make:job TestRabbitMQJob,在handle()里写info('RabbitMQ job executed at ' . now()); - 分发任务:
TestRabbitMQJob::dispatch();(比如放在某个路由或命令中) - 启动消费者:
php artisan queue:work rabbitmq --verbose,观察控制台是否打印日志 - 进 RabbitMQ 管理页 → Queues → default → Get Messages,看是否有未消费消息;也可查看 Exchanges → amq.default → Publish message 测试直连发送


















