iis - URL 重写从 HTTPS 中删除 WWW

标签 iis url-rewriting https iis-8 url-redirection

我需要在 IIS8 上的 URL Rewrite 中设置一条规则,以从所有 https 请求中删除 www。

下面是我想要实现的。我不在乎我们是否从所有网址中删除 www。

http://sitename.com/sub        ->    http://sitename.com/sub
http://www.sitename.com/sub    ->    http://www.sitename.com/sub

https://sitename.com/sub       ->    https://sitename.com/sub
https://www.sitename.com/sub   ->    https://sitename.com/sub

最佳答案

我让它与这条规则一起工作。

<rule name="Remove WWW" enabled="true" stopProcessing="true">
   <match url="(.*)" />
   <conditions>
      <add input="{HTTP_HOST}" pattern="^(www\.)(sitename\.com)" />
   </conditions>
   <action type="Redirect" url="https://{C:2}/{R:1}" />
</rule>

我还在上面添加了这条规则来强制所有请求到 https

<rule name="HTTP to HTTPS redirect" stopProcessing="true">
   <match url="(.*)" />
   <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
      <add input="{HTTPS}" pattern="off" ignoreCase="true" />
   </conditions>
   <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
</rule>

关于iis - URL 重写从 HTTPS 中删除 WWW,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22385563/

相关文章:

php - 不同的操作系统和服务器路径

iis - Azure,实时流畅流媒体

php - 使用 htaccess 从 URL 中删除 .php

browser - 在浏览器上设置 SOCKS5 代理以便在其他应用程序上使用

ruby - Net::HTTP 中的服务器名称指示支持?

C#:尝试以编程方式设置我网站的 "ServerBindings"属性,不断崩溃

.htaccess 重写 URL 以向 URL 添加字符

http - URL中的UTF8组件,是否应该区分大小写?

html - 使用相对链接从 https(反之亦然)链接到 http 的简短方法

c# - 每个 session 的线程限制?