【发布时间】:2023-03-30 06:10:02
【问题描述】:
我在IIS 中托管了站点,该站点在url 中打开,例如http://www.example.com 以及http://example.com
但我不想在http://example.com 中打开它,
http://example.com 可能会变成 http://www.example.com
【问题讨论】:
我在IIS 中托管了站点,该站点在url 中打开,例如http://www.example.com 以及http://example.com
但我不想在http://example.com 中打开它,
http://example.com 可能会变成 http://www.example.com
【问题讨论】:
(注意:下面更新了答案)
这需要您使用 URL 重写。
这里的这篇文章展示了如何使用 URL 重写扩展:
http://www.dotnetexpertguide.com/2011/08/iis-7-redirect-domaincom-to.html
如果您没有通过 IIS 管理器看到此扩展,您可以在此处下载该扩展: http://www.iis.net/download/URLRewrite
您需要添加一条规则,在“搜索引擎优化”下查看并编辑“规范域名”。
在那里,您可以通过在下拉列表中选择域名的 www 版本将所有流量定向到该域名。
编辑: 至于在 web.config 中做的问题,这是一个示例配置:
<rewrite>
<rules>
<rule name="Redirect to www" stopProcessing="true">
<match url="(.*)" />
<conditions trackAllCaptures="false">
<add input="{HTTP_HOST}" pattern="^domain.com$" />
</conditions>
<action type="Redirect"
url="{MapProtocol:{HTTPS}}://www.domain.com/{R:1}" />
</rule>
</rules>
<rewriteMaps>
<rewriteMap name="MapProtocol">
<add key="on" value="https" />
<add key="off" value="http" />
</rewriteMap>
</rewriteMaps>
</rewrite>
希望对你有帮助,
塞巴斯蒂安
【讨论】: