我阅读了大量的.htaccess论坛,但我无法得到我需要的东西。如果这感觉多余,我很抱歉。我需要我的网站:
1.将非www重定向到www
2.将HTTP重定向到HTTPS(除了URL中包含'travel-blog'或'easyblog'的任何页面)
1号工作正常。数字2是问题子,特别是当我使用HTTP键入链接时。例如:
https://www.detourjournal.com加载就好了
www.detourjournal.com正确地重定向到https://www.detourjournal.com和
detourjournal.com正确地重定向到https://www.detourjournal.com
然而,
http://www.detourjournal.com导致404错误,并且https://www.detourjournal.com/travel-blog不会像它应该重定向到HTTP(网站的这部分是社区博客,所以我需要允许http链接待发布)
关于我做错的任何想法?我是否需要通配符SSL来执行我想要的操作? 我该如何解决这个问题?
这是我到目前为止所拥有的。
# Redirect non-www to www:
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]
## This will switch any page from HTTP over to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
## This will switch from HTTPS back to HTTP on any page that has 'travel-blog' or 'easyblog' in the URL
RewriteCond %{HTTPS} on
RewriteRule ^(travel-blog|easyblog)(.*)/?$ http://%{HTTP_HOST}%{REQUEST_URI} [R=301,NC,L]