我正在努力通过 .htaccess 文件为我的域设置正确的 https 重定向。我有以下域、子域和目录:
public_html/ -> www.red.com
public_html/drk -> dark.red.com
public_html/blue -> www.blue.com
我该如何编写 .htaccess 文件以使重定向正常工作?
目前我的 .htaccess 文件中有这个:
RewriteEngine On
RewriteOptions inherit
RewriteCond %{HTTP_HOST} ^(www\.)?red\.com$ [NC]
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ https://red.com%{REQUEST_URI} [R=301,L,NE]
RewriteCond %{HTTP_HOST} ^(www\.)?dark\.red\.com$ [NC]
RewriteCond %{HTTPS} on [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ http://dark.red.com%{REQUEST_URI} [R=301,L,NE]
RewriteCond %{HTTP_HOST} ^(www\.)?blue\.com$ [NC]
RewriteCond %{HTTPS} on [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteRule ^ http://blue.com%{REQUEST_URI} [R=301,L,NE]
重定向对主站点 (www.red.com) 有效,但对其他两个站点无效。如果我删除其他两个站点的规则,重定向会将我发送到 www.red.com/drk 而不是 dark.red.com,并将我发送到 www.red.com/blue 而不是 www.blue.com。