UrlRewriteFilter:www 和 https 重定向

UrlRewriteFilter: www and https redirect

我正在使用 Tuckey UrlRewriteFilter 强制用户转到我的网站的 'www' 和 'https' 版本。我的意思是接下来的 3 个网址必须重定向到 https://www.myweb.com

问题出在最后一个,我找不到将'www' 替换为'https' 的解决方案。我有下一条规则,可以使 2 个第一个案例正常工作:

  <rule>
    <name>Domain Name Check</name>
    <condition name="host" operator="equal">myweb.com$</condition>
    <condition type="scheme" operator="equal">^http$</condition>
    <from>^(.*)$</from>
    <to type="permanent-redirect">https://www.myweb.com</to>
  </rule>

这当然不适用于第三种情况。如果我对第三种情况尝试类似的规则,如下所示,它也不起作用(我不知道为什么):

  <rule>
    <name>Domain Name Check</name>
    <condition name="host" operator="equal">myweb.com$</condition>
    <condition type="scheme" operator="equal">^https$</condition>
    <from>^(.*)$</from>
    <to type="permanent-redirect">https://www.myweb.com</to>
  </rule>

你能帮我弄清楚第三种情况的规则吗?

谢谢。

问题不在于过滤器,而在于我的证书。我为 www.myweb.com 颁发了证书,但没有为 myweb.com 颁发证书,因此 https://myweb.com 请求未到达我的服务器,浏览器检测到证书无效并阻止了该过程。

我刚刚为 https://myweb.com 颁发了证书并修改了我的 Tuckey 规则,如下所示。现在 https://www.myweb.com 是唯一 URL 用户可以使用。

  <rule> 
    <name>Domain Name Check</name>
    <condition type="request-url" operator="equal">(^http://myweb.com|^http://www.myweb.com|^https://myweb.com)</condition>
    <from>^(.*)$</from>
    <to type="redirect">https://www.myweb.com</to>
  </rule>