.htaccess RewriteRule :始终将 http 重定向到 https (工作正常),但仍需要 1 个排除...
看起来
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
效果很完美,并将所有 http 请求重定向到 https 页面。 结果,
http://mydomain.com/?p=abc
http://mydomain.com/?q=de
http://mydomain.com/?z=123
http://mydomain.com/
分别转到https://
https://mydomain.com/?p=abc
https://mydomain.com/?q=de
https://mydomain.com/?z=123
https://mydomain.com/
。
如何保持 http://mydomain.com/
保持不变而不重定向到 https? 标准:如果没有参数(没有 ?p、没有 ?q、没有 ?z 等),则停留在 http。
谢谢
Seems like
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
works perfect and redirects all http requests to https pages.
As result,
http://mydomain.com/?p=abc
http://mydomain.com/?q=de
http://mydomain.com/?z=123
http://mydomain.com/
go to https://
https://mydomain.com/?p=abc
https://mydomain.com/?q=de
https://mydomain.com/?z=123
https://mydomain.com/
respectively.
How to keep http://mydomain.com/
stay with no redirection to https?
Criteria: if no parametres (no ?p, no ?q, no ?z etc.), then stay at http.
Thank you
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您想在查询字符串为空时继续使用 HTTP,请使用下面的解决方案 #1。
如果您只想在存在 p、q 或 z 参数时保留 HTTP,请注释掉 #1 解决方案并取消注释 #2 解决方案。
If you want to stay on HTTP when the query string is empty, use solution #1 below.
If you only want to keep HTTP when p, q, or z params are present, comment out the #1 solution and uncomment out the #2 one.
根据您的条件使用此代码:
Use this code for your conditions: