我执行了以下步骤:
- 安装了 IIS 所需的所有功能(URLRewrite 2.0、ARR 等)
- 在 VisualStudio 中创建默认 MVC Web 应用程序
- 将此 Web 应用程序作为新网站添加到 iis(我可以通过以下方式访问它
http://localhost
) - 已打开此站点的 URLRewrite
- 点击
Add Rule(s)...
- 选择
Reverse Proxy
- 输入
google.com
将转发 HTTP 请求的服务器 - 未选中
Enable SSL Offloading
- 点击
OK
当我访问时,http://localhost
我仍然有自己的 web 应用程序,而不是google.com
。在我的应用程序中,web.config
我有:
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{CACHE_URL}" pattern="^(https?)://" />
</conditions>
<action type="Rewrite" url="{C:1}://google.com/{R:1}" />
</rule>
</rules>
</rewrite>
然后我尝试添加更有用的规则:重写localhost/google/sth
为google.com/search?q=sth
。我改变了web.config
:
<rewrite>
<rules>
<rule name="ReverseProxyInboundRule1" stopProcessing="true">
<match url="^google/(.*)" />
<conditions>
<add input="{CACHE_URL}" pattern="^(https?)://" />
</conditions>
<action type="Rewrite" url="{C:1}://google.com/search?q={R:1}" />
</rule>
</rules>
</rewrite>
但它仍然不起作用。