背景
项目迁移,原来部署在外网环境的应该现在迁移到内网环境,通过一台有外网的nginx服务器对外提供服务,在注册模块有一个发邮件的功能,部署完成之后测试邮件不通。
原因
原来是直接通过部署应用的服务器发送的邮件(应用服务器 —> 邮件服务器),现在是通过nginx做反向代理提供服务,应该服务器没有外网。当然发不出去。
解决方案
参考方案
通过nginx做正向代理,nginx安装模块一定要有选择mail模块,应用服务器指向nginx服务器,nginx代理指向邮件服务器(应用服务器 --> nginx --> 邮件服务器),nginx 端口25开放。
遇到困难
nginx上25端口被一个本地进程(172.0.0.1)监听,内网ip(192.168.100.29)无法访问到25端口,这个情况是被一个同事发现的,困扰了我好几天。最后直接杀死该监听进程