0

我阅读了大量的 .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]
4

0 回答 0