【发布时间】:2017-12-24 11:40:55
【问题描述】:
我希望在我的 web.config 文件中设置一个重写规则,强制 URL 使用“www”子域。这样做是这样的:
<rules>
<rule name="Add WWW" stopProcessing="true">
<match url="^(.*)$" />
<conditions>
<add input="{HTTP_HOST}" pattern="^(?!www\.)(.*)$" />
</conditions>
<action type="Redirect" url="http://www.{C:0}{PATH_INFO}" redirectType="Permanent" />
</rule>
但是,该项目在多个域上运行多个网站,其中一些使用 SSL,而另一些则不使用。
上面的代码将http:// 硬编码到重定向中。我要做的是抽象这一点,以便在重定向期间维护 http 或 https 协议而不会被硬编码。
期望结果的一些例子是:
- http://olddomain.com > http://www.newdomain.com
- https://someolddomain.com > https://www.somenewdomain.com
非常感谢。
【问题讨论】:
标签: url-rewriting web-config url-rewrite-module