环境:iis8.5,windowsserver2012(64位)
安装文件:ARRv3_0,urlrewrite2,0,wpilauncher(web平台安装程序5.0),WebFarm2.2,Web deploy2.0
第一步,安装所需文件。
由于ARR3.0需要组件Web Farm Framework 2.2(该组件又需要Web PlatformInstaller 3.0 和Web Deploy 2.0组件支持),ARRv3_0中包涵URL rewriter,不需要另外安装。
1. 首先安装web平台安装程序5.0,按照提示即可
2. 点击web deploy2.0的可执行程序时,会自动打开web平台安装程序,程序在下载安装过程中可能会报网关错误,这时需要FQ下载工具(我用的是saveVPN,尽量选择美国硅谷的节点,或者使用goagent)。根据提示安装完即可。
3. 点击web farm framework可执行程序安装点击finish即可。
4. 点击ARRv3_0自动跳转到web平台安装程序上。此时也需要FQ工具,下载安装完即可。
第二步,重启iis,此时点击根目录会看见多了一个Server Farms目录和两个图标,一个是application requestroute,另一个是URL重写。如下图
如果图标没出来,重新启动后仍然无效,可采用如下办法.
1. 分别通过如下命令打开 IIS管理器,查看有无ARR图标:
%windir%\System32\inetsrv\iis.msc
%windir%\system32\inetsrv\InetMgr.exe
2. 通过PS脚本检查ARR是否安装成功:
$dll=[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.Web.Administration")
#Get the manager and config object
$mgr = new-object Microsoft.Web.Administration.ServerManager
$conf = $mgr.GetApplicationHostConfiguration()
#Get the webFarms section
$section = $conf.GetSection("webFarms")
$section
第三步,需要设置并启动ARR,一般采用默认设置即可。双击application request routingcache之后,在右方Proxy下点击Server ProxySettings,然后点击“应用”即可。
第四步,配置url转发。
在网站目录下点击DefaultWeb Site,在其主页中点击url重写。如图2
点击添加规则,在入站规则中选择空白规则(blank rule)如图3
下面进行url转发配置:
1. 添加名称,可自定义名称,但确保唯一。
2. 匹配URL中请求的URL选择:与模式匹配;使用:正则表达式;模式:^(.*)。可在测试模式中输入www.***.com测试是否正确。
3. 条件中添加用户请求的域名的正则表达式,以www.woawoo.com为例,模式即^www.woawoo.com$。注意,该域名需要绑定主机的ipv4地址,在主机记录中添加www。
4. 配置操作,操作类型选择重写(Rewite)操作属性选择用户请求所需跳转的url,可以是域名或者ip地址,包括该主机下的虚拟机(web server)。
5. 点击应用即可。若多域名绑定主机,就只需要添加多个入站规则即可,填写对应的域名,以及所需跳转的url。
至此,就实现了基于windows server 2012的iis上的反向代理。