--windows服务器的IIS跳转(重定向)
【官网】:https://www.iis.net/downloads/microsoft/url-rewrite#additionalDownloads
应用场景
出于一些类似反向代理,隐藏原始IP,优化网址格式等目的,我们需要用到iis跳转(url重定向)处理基础资源
IIS自带的IIS Rewrite组件(需在IIS内的Web平台安装程序)中搜索,安装
使用须知
针对不同版本的IIS有不同版本的IIS Rewrite版本,需对应上。
配置步骤
步驟1)正常部署,绑定ip,端口。
[注1]设置这个需要安装urlrewrite.dll组件。请点击IIS中【Web平台安装程序】进行安装.
[注2]如何编辑IIS Rewrite的正则脚本(可以在可视化中设置,也可以在配置文件中编写).
示例:web.config
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<defaultDocument>
<files>
<remove value="default.aspx" />
</files>
</defaultDocument>
<rewrite>
<rules>
<rule name="3701">
<match url="^(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^100.100.100.8:3701$" />
</conditions>
<action type="Rewrite" url="http://101.101.101.43:3701/{R:1}" />
</rule>
<rule name="9023">
<match url="^(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^100.100.100.8:9023$" />
</conditions>
<action type="Rewrite" url="http://101.101.101.43:9023/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
步骤2)启用代理程序.
步骤3)检查防火墙,云服务器后台端口设置及相关端口是否一致。
[注1] Iis上给rewrite站点设置的端口和正则配置中的端口应该一致,否则无法生效..网络不通.
[注2] 涉及云服务器的还需在安全策略配置中开启相关端口的入网权限。
常见问题
快速入门
【含wss地址的iis重定向】
<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <defaultDocument> <files> <remove value="default.aspx" /> </files> </defaultDocument> <rewrite> <rules> <rule name="3601"> <match url="^(.*)" /> <conditions> <add input="{HTTP_HOST}" pattern="^100.100.100.175:3601$" /> </conditions> <action type="Rewrite" url="http://200.200.200.225:3601/{R:1}" /> </rule> <rule name="2346"> <!--将ws://100.100.100.175:2346的访问重定向到 ws://200.200.200.225:2346--> <match url="^(.*)" /> <conditions> <add input="{CACHE_URL}" pattern="^(.+)s://"/> <add input="{CACHE_URL}" pattern="^(.*)s://"/> <add input="{HTTP_HOST}" pattern="^100.100.100.175:2346$" /> </conditions> <action type="Rewrite" url="{C:1}://200.200.200.225:2346/{R:1}" /> </rule> </rules> </rewrite> </system.webServer> </configuration>