IIS 7.5 中的 URL 重写不起作用

IIS 7.5 中的 URL 重写不起作用

我正在尝试将所有 http 流量重定向到 https,因为该站点需要 SSL。

例如,如果有人导航到http://site.com或者http://www.site.com我想将用户重定向到https://www.site.com

现在用户收到 403.4 禁止错误 - 您尝试访问的页面受安全套接字层 (SSL) 保护。

我尝试过许多不同的 URL 重写规则,但似乎都不起作用。事实上,似乎什么都没有发生,几乎就像模块根本无法正常工作一样。

首先,我的规则正确吗?如果正确,还有什么可能妨碍它正常工作?

    <rewrite>
        <rules>
            <rule name="Redirect all http traffic to https" enabled="true" stopProcessing="true">
                <match url="(.*)" ignoreCase="true" />
                <conditions>
                    <add input="{HTTPS}" pattern="off" />
                </conditions>
                <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" appendQueryString="true" redirectType="Permanent" />
            </rule>
        </rules>
    </rewrite>

答案1

<rule name="Redirect to HTTPS" stopProcessing="true">
  <match url="(.*)" />
  <conditions>
    <add input="{HTTPS}" pattern="^OFF$" />
  </conditions>
  <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="SeeOther" />
</rule>

显然,SSL 需要关闭。

不确定和标签是否合适。

相关内容