Docker部署Symfony5项目访问Mercure Hub端口3000被拒绝求助
问题排查与解决方案
1. 修正访问地址拼写错误
你输入的访问地址存在拼写失误:http://locahost:3000 缺少字母l,正确的基础地址应为 http://localhost:3000。
2. 补全Mercure Hub标准访问路径
dunglas/mercure镜像的默认Hub服务入口路径为/.well-known/mercure,所以完整可访问的Mercure Hub地址为:http://localhost:3000/.well-known/mercure
3. 异常兜底排查方案
如果修正地址后仍无法访问,按以下步骤校验:
- 检查本地3000端口是否被其他进程占用,执行对应系统命令:
若存在其他进程占用3000端口,可修改docker-compose.yml中caddy服务的端口映射规则,比如调整为# Windows系统 netstat -ano | findstr :3000 # Mac/Linux系统 lsof -i :3000"3001:80"后重启容器生效。 - 检查项目.env文件中Mercure相关环境变量配置是否合法:如果
MERCURE_ALLOW_ANONYMOUS参数设置为0,匿名访问会被拒绝,需要携带合法JWT参数才能正常请求Hub接口。 - 查看Mercure容器运行日志排查启动异常:
docker logs test_mercure
内容的提问来源于stack exchange,提问作者Reese
相关产品推荐
相关产品推荐

