我最近在我的网站上购买并集成了HTTPS,我用它来开发子域上的其他网站。HTTPS在www和非www网站上都能正常工作,因为它已经注册了。
我使用以下命令从所有子页面自动重定向到https:
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]但是我在something.mydomain.com和其他子域上有很多网站,它们现在自动重定向到https,当然也会显示不可信连接和安全问题的错误,因为证书没有注册到这些子域。
请有人给我指出正确的方向,如何命令应该看起来像重定向到非https版本的除www子域以外的所有子域?所以它不会再向客户端显示错误了?
非常感谢。
发布于 2016-09-18 16:47:55
要仅将www.mydomain.com重定向到HTTPS版本,请使用
RewriteCond %{HTTPS} !=on
RewriteCond "%{HTTP_HOST}" "^www\." [NC]
RewriteCond "%{SERVER_PORT}" "^80$"
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]发布于 2016-09-23 06:14:29
因此,下一段代码现在完成了这个任务:
RewriteCond %{HTTPS} !=on
RewriteCond "%{HTTP_HOST}" "^www\." [OR]
RewriteCond "%{HTTP_HOST}" "^domain.com [NC]
RewriteCond "%{SERVER_PORT}" "^80$"
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]因此,它将HTTP://www.domain.com重定向到HTTPS://www.domain.com,但排除了其他子域。它还将HTTP://domain.com重定向到HTTPS://domain.com。
https://stackoverflow.com/questions/39549945
复制相似问题