我想有帮助重定向我的几个二级域名到我的主域名。同时我的主域名必须重定向在“https”和“www”。
我现在能做的最好的事情就是:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^$
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTPS}s ^on(s)|
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301,NC]
这适用于除一种情况以外的所有情况:当按照以下规则写入辅助域时:https + www,它保持其外观,不重定向。
我也试探着:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule .* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteRule .* https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
#Redirection number 1
RewriteCond %{HTTP_HOST} ^www.example1.com [NC]
RewriteRule ^/?(.*) https://www.example.com/$1 [L,R=301]
#Redirection number 2
RewriteCond %{HTTP_HOST} ^www.example2.com [NC]
RewriteRule ^/?(.*) https://www.example.com/$1 [L,R=301]
#Redirection number 3
RewriteCond %{HTTP_HOST} ^www.example3.com [NC]
RewriteRule ^/?(.*) https://www.example.com/$1 [L,R=301]
#Redirection number 4
RewriteCond %{HTTP_HOST} ^www.example4.com [NC]
RewriteRule ^/?(.*) https://www.example.com/$1 [L,R=301]
总的来说是可行的,但必须有更简单更短的,不是吗?
提前感谢您帮助!
编辑21/10/22
我想我找到这个了,告诉我行不行
RewriteEngine On
RewriteCond %{HTTP_HOST} ^example1.com$ [OR]
RewriteCond %{HTTP_HOST} ^example2.com$ [OR]
RewriteCond %{HTTP_HOST} ^example3.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.example1.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.example2.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.example3.com$
RewriteRule (.*)$ https://www.example.com/$1 [R=301,L]
1条答案
按热度按时间shyt4zoc1#
主域上的.htaccess始终具有
https
和www
你最后一次编辑重定向其他域到你的主要似乎是好的。