ASP.NET - 如何通过 Web.config [CORS 策略问题] 从 HTTP 重定向到 HTTPS 和特定来源

Mr.*_*.AF 5 asp.net https redirect cors

我确实通过以下配置将用户重定向HttpHttps

<rewrite>
  <rules>
    <rule name="HTTP_TO_HTTPS" enabled="true" stopProcessing="true">
      <match url="(.*)"/>
      <conditions logicalGrouping="MatchAny">
        <add input="{HTTPS}" pattern="^OFF$"/>
      </conditions>
      <action type="Redirect" url="https://{HTTP_HOST}{REQUEST_URI}" appendQueryString="false"/>
    </rule>
  </rules>
</rewrite>       
Run Code Online (Sandbox Code Playgroud)

它按预期工作。这里有一个问题,它只重定向到Https但不重定向到原点。我的意思是

http://www.example.comhttps://www.example.com

http://example.comhttps://example.com

以上情况造成的,用户认为Cross-origin resource sharing (CORS) policy问题的根源各不相同。

我想将所有用户重定向到https://example.com以避免冲突的来源。

VDW*_*WWD 5

您也可以使用重写模块删除 WWW 部分

<rule name="Remove www" stopProcessing="true">
  <match url="(.*)" ignoreCase="true" />
  <conditions>
    <add input="{HTTP_HOST}" pattern="^www" />
  </conditions>
  <action type="Redirect" url="http://example.com/{R:0}" redirectType="Permanent" />
</rule>
Run Code Online (Sandbox Code Playgroud)