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

Laravel8配合Mailcatcher发邮件报Cannot assign requested address如何解决

问题原因及解决方案

核心错误点

你先后两次报错分别对应两个配置错误:

  • 第一次用MAIL_HOST=localhost:Docker容器内的localhost指向当前PHP容器本身,而非宿主机或Mailcatcher容器,自然无法建立连接。
  • 第二次修改主机为mailcatcher后仍报错:你配置的8003:1025是宿主机端口到Mailcatcher容器内部端口的映射,仅对外网/宿主机访问生效。同一Docker网络下的容器互访,直接使用Mailcatcher容器内部监听的SMTP端口1025即可,不需要走映射后的宿主机端口。

修复步骤

  1. 修改你的.env邮件配置对应项为如下值:
MAIL_HOST=mailcatcher
MAIL_PORT=1025

其余邮件配置项保持现有配置即可。
2. 执行Laravel配置清理命令,避免旧缓存配置生效:

php artisan config:clear
  1. 重新发送测试邮件,即可在宿主机的http://localhost:8100 Mailcatcher界面看到捕获到的邮件。

内容的提问来源于stack exchange,提问作者shuba.ivan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 23:48:03