Azure网站内建支持HTTPS,客户可以通过HTTP或者HTTPS方式访问您的网站。有些网站基于安全考虑,需要强制客户只能通过HTTPS的方式访问。最简单的办法就是在Web.config中添加如下配置,通过sslFlags来禁止HTTPS访问。

   <system.webServer>

      <security>

         <access sslFlags=”ssl”>

      </security>

   </system.webServer>

这样,当客户通过HTTP方式访问您的网站是,会得到403-禁止访问的错误。这种方式非常不友好,降低了客户体验。另外,对于很多客户来讲,并不了解禁止访问的原因,客户可能会试图联系客服解决问题。

通过URL Rewrite,我们可以解决该问题。下面的配置将HTTP请求自动重定向到HTTPS请求,从而避免了403 – 禁止访问的错误。

<configuration>

  <system.webServer>

    <!– URL Rewrite rule to redirect anyone from –>

    <rewrite>

      <rules>

        <rule name=”Redirect to https”>

          <match url=”(.*)”/>

          <conditions>

            <add input=”{HTTPS}” pattern=”Off”/>

          </conditions>

          <action type=”Redirect” url=”https://{HTTP_HOST}/{R:1}”/>

        </rule>

      </rules>

    </rewrite>

  </system.webServer>

</configuration>

Leave a comment

电子邮件地址不会被公开。 必填项已用*标注