哥们我来给大家摆一摆,咋用IIS7搞反向代理。一开始我也觉得这玩意儿挺玄乎,但真上手,发现也就那么回事儿。
第一步,你得有个IIS7
这不废话嘛没有IIS7,咱还玩啥反向代理?我这电脑是Windows Server 2008 R2,自带的就是IIS7。如果你那电脑上没有,赶紧装一个。
第二步,装两个小插件
光有IIS7还不够,还得装俩小玩意儿:Application Request Routing(ARR)和URL Rewrite。这俩东西,微软官网就有,直接下载安装就行。装的时候,一路点“下一步”,没啥特别的。
第三步,打开IIS管理器,开始捣鼓
打开IIS管理器,找到你的服务器,双击“Application Request Routing Cache”。
在右边的“Actions”面板里,找到“Server Proxy Settings...”,点进去。
勾上“Enable proxy”这个选项。其他的,我基本上没动,保持默认。
然后点右边的“Apply”,应用设置。
第四步,配置URL重写规则
这一步是关键。回到IIS管理器,找到你的网站,双击“URL Rewrite”。
在右边的“Actions”面板里,点“Add Rule(s)...”。
选择“Reverse Proxy”,点“OK”。
这时候,会弹出一个窗口,让你填两个地址。第一个是“Inbound Rules”,这里填你要反向代理的那个服务器的地址,比如“192.168.1.100”。第二个是"From"这里我留空,你也可以根据需要填。
点“OK”,搞定!
第五步,测试一下
你可以通过你的IIS服务器的地址,来访问那个被你反向代理的服务器。是不是很简单?
说说我为啥要用反向代理
- 保护内网服务器。我把内网服务器藏在IIS后面,外面的人只能看到IIS,看不到内网服务器,安全!
- 负载均衡。我这儿没那么多服务器,所以没用到这个功能。但听说,反向代理可以把请求分给多个服务器,这样就不会把一个服务器累死。
- 防止DDoS攻击之类的,这玩意儿能拦一些坏人的捣乱。
IIS7的反向代理,配置起来不难,用起来也挺方便。这只是我个人的实践经验,可能还有很多高级玩法我没摸索到。大家伙儿要是感兴趣,可以自己再深入研究研究。