用子域重写为HTTPS?

问题描述 投票:0回答:1

如何设置web.config来处理以下重定向

  1. http://example.com - > https://example.sub.com
  2. http://www.example.com - > https://example.sub.com
  3. http://example.sub.com - > https://example.sub.com

我不确定的部分是匹配网址,例如,

http://<dynamic>http://<dynamic>.sub.com

iis url-rewriting web-config
1个回答
0
投票

我会用两条规则解决这个问题。当主机名包含.sub.com并且只是执行普通重定向时,将匹配一个。接下来将.sub.com附加到主机名。

这些是基于https://ruslany.net/2009/04/10-url-rewriting-tips-and-tricks/#redirect-https的#4

最后,在您证明一切都按预期工作后,在两个规则中将Found更改为Permanent。

<rule name="Redirect to HTTPS" stopProcessing="true">  
    <match url="(.*)" />  
    <conditions>  
        <add input="{HTTPS}" pattern="^OFF$" />  
        <add input="{HTTP_HOST}" pattern="\.sub\.com$" />  
    </conditions>  
    <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Found" />  
</rule>
<rule name="Redirect to HTTPS" stopProcessing="true">  
    <match url="(.*)" />  
    <conditions>  
        <add input="{HTTPS}" pattern="^OFF$" />    
    </conditions>  
    <action type="Redirect" url="https://{HTTP_HOST}.sub.com/{R:1}" redirectType="Found"     />  
</rule>   
© www.soinside.com 2019 - 2024. All rights reserved.