直接访问时,重写规则对 https 工作正常,但在首先从 http 重定向到 https 时无效

问题描述

当访问域 (https://sitename.com) 时,以下规则工作正常。它显示“en”页面

  1. 重写规则 ^/$ /content/sitename/us/en.html [PT]

但是当首先引入 http to https 规则时,通过以下规则将所有 http 请求强制重定向到 https:

RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{REQUEST_URI} !^/dispatcher/invalidate.cache
重写规则 (.*) https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301]

然后请求被重定向如下:
(http://sitename.com) 被转换为 (https://sitename.com/content/sitename/us/en.html)

理想情况下,它应该只转换 w.r.t 协议。
(http://sitename.com) 应随后转换为 (https://sitename.com) &
https://sitename.com 将提供第一点中提到的主页,而不会在浏览器中向最终用户显示 /content URL。

在这里提出一些建议。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)