nginx 代理第三方邮件站点
需求:公司业务服务器使用的是阿里云,要求内网(仅有内网IP)所有流量走网关服务器(有外网IP及内网IP),内网服务器需要调用一个公网上的第三方邮件站点。在参考了https://www.linuxba.com/archives/7931的配置方法并亲自请教博主后得到了使用stream模块解决该问题:
1.重新编译NGINX,添加stream模块(使用动态模块亦可),具体如何重新编译以及该模块的作用我就不在这里班门弄斧了,请参考官网或其它教程。
2.编译后在NGINX的配置文件中添加配置
在nginx.conf的末尾添加
stream {
stream/*.conf
}
在nginx.conf的同级目录创建stream目录并进入stream目录添加mail.conf并配置指令
upstream smtphm.qiye.163.com { #该域名为反代的虚拟域名,应该和代码里调用的域名一样。
server smtphm.qiye.163.com:994; #第三方邮件服务器的域名及端口
}
server {
listen 994; #监听端口,最好与第三方邮件服务器的端口相同,是否可以不同未实验,有兴趣的可以试试。
proxy_connect_timeout 60s; #根据实际需要填写大小
proxy_timeout 60s; #根据实际需要填写大小
proxy_pass smtphm.qiye.163.com;
}
重新加载配置文件使其生效,执行nginx -s reload
在内网需要访问该网关服务器的服务器上写hosts指向网关服务器(写内网IP即可)
总结:
1.朋友给我推荐了另外一篇教程,我发现与我现在使用的方法一样,链接是 https://blog.csdn.net/yongyong169/article/details/80815549 供各位学习交流。
2.这问题使用nginx的邮件模块也可解决,但是我看了邮件模块的使用方法根本没看懂,所以没使用该方法。有兴趣的可以参考这两篇教程https://www.jianshu.com/p/b27e76ba6ac8 https://blog.csdn.net/lovewebeye/article/details/79930515
3.简单来说我这需求就是解决阿里云内网无法访问外网的问题,还有如下几种解决方法:一、使用阿里云的NAT网关技术也可以解决,只是费用较高。二、自己写防火墙规则,参考教程
https://www.cnblogs.com/ddif/articles/9930450.html
4.这里推荐一个nginx各种代理的教程 https://blog.lyz810.com/article/2016/10/nginx-proxy-module-guide/
nginx 代理第三方邮件站点的更多相关文章
- nginx代理https站点(亲测)
nginx代理https站点(亲测) 首先,我相信大家已经搞定了nginx正常代理http站点的方法,下面重点介绍代理https站点的配置方法,以及注意事项,因为目前大部分站点有转换https的需要所 ...
- 决解nginx代理的django项目的admin站点无法访问,和没样式的问题。
首先我们先解决无法访问admin站点的问题 首先我们先修改一下nginx的配置,添加红色框框的部分. 然后重新启动一下nginx 访问一下admin站点 发现没有样式了. 我们先修改/fast_foo ...
- Nginx代理与负载均衡配置与优化
Nginx代理 Nginx从0.7.48版本开始,支持了类似Squid的缓存功能.Nginx的Web缓存服务主要由proxy_cache相关指令集和fastcgi_cache相关指令集构成,前者用于反 ...
- 使用nginx代理weblogic负载方案
之前一直用apache来做weblogic的前端,由于nginx对静态内容的出色性能,不得不转投nginx.这里就不 再写weblogic的安装了. 安装nginx nginx需要pcre做支持,一般 ...
- ASP.NET Core部署到CentOS7,使用Nginx代理
ASP.NET Core 的运行环境由新开发的 Kestrel Server 负责,IIS 退回到 HTTP 的侦听器的角色,微软也特别为了这个需求开发了 IIS Platform Handler,以 ...
- Nginx - 代理、缓存
Nginx 标签 : nginx 代理 代理服务可简单的分为正向代理和反向代理: 正向代理: 用于代理内部网络对Internet的连接请求(如VPN/NAT),客户端指定代理服务器,并将本来要直接发送 ...
- swagger.net 使用nginx 代理时出现端口号导致出错
1:当我们通过nginx代理访问时,由于nginx配置了映射到的一个站点为端口为127.0.0.1:6201,导致访问swagger接口时出现增加端口号,如下截图,这样就导致整个swagger无法使用 ...
- nginx代理部署Vue与React项目
nginx代理部署Vue与React项目 一,介绍与需求 1.1,介绍 Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一个IMAP/POP3/SMTP服务.Nginx是由 ...
- nginx代理tomcat
http://blog.csdn.net/kongqz/article/details/6838989 http://www.800l.com/linux-nginx-tomcat-jdk.html ...
随机推荐
- Linux-sys文件系统
1.sys文件系统本质上和proc文件系统是一样的,都是虚拟文件系统.都在根目录下有个目录(一个是/proc目录,另一个是/sys目录),因此都不是硬盘中的文件,都是内核中的数据结构的可视化接口. 2 ...
- JS 判断移动端与PC端
js判断移动端与pc端 这里介绍下使用device.js插件来判断移动端设备 地址:https://github.com/matthewhudson/device.js 示例: 1 2 3 4 5 ...
- Django知识点_梳理
- [原]调试实战——使用windbg调试崩溃在ole32!CStdMarshal::DisconnectSrvIPIDs
原调试debugwindbg崩溃crash 前言 最近程序会不定期崩溃,很是头疼!今晚终于忍无可忍,下决心要干掉它!从之前的几个相关的dump可以猜到是有接口未释放导致的问题,但没有确认到底是哪个接口 ...
- Codeforces 1292A/1293C - NEKO's Maze Game
题目大意: 有一个2*n的图 NEKO#ΦωΦ要带领mimi们从(1,1)的点走到(2,n)的点 每次会操作一个点,从可以通过到不可以通过,不可以通过到可以通过 每操作一次要回答一次NEKO#ΦωΦ能 ...
- iOS 自定义只有年月的DatePikerView
头文件: @interface YearMonthPikerView : UIView @property (nonatomic,copy) void(^cancelBlock)(); @proper ...
- 6.Redis集群
redis-cluster[集群]架构图 redis-cluster投票:容错 搭建Ruby环境 集群的搭建过程 连接集群 查看集群的命令 1.1 redis-cluster[集群]架构图 架构细节: ...
- html5 一些好用的原生事件
计算机技术发展这么多年, 有些方面太老了,不适合新时代的发展, 使用新的规范,更方便开发和使用, 提高各方使用人的工作效率, 何乐而不为 drag drop html5新增属性 某些操作使用拖拽比较方 ...
- Linux_打包文件
将多个文件打包成一个大文件,用tar命令 tar是将多个文件前后连接在一起,tar并不对文件进行压缩 tar -cf 要创建的打包文件名(最后加上.tar) 要打包的文件/列表 c代表创 ...
- matplotlib.pyplot.contour 简单等高线绘制
contour(X, Y, Z) X,Y是与Z形状相同的二维数组,可以通过 numpy.meshgrid()创建. numpy.meshgrid()----从坐标向量返回坐标矩阵 生成的x,y坐标矩阵 ...