.htaccess使用SSL将辅助域重定向到主域

时间:2014-11-07 07:08:33

标签: .htaccess redirect ssl

我想将我的辅助域重定向到我的.com主域,这样当我访问domain.asia或www.domain.asia时,它会将URL重定向到https://www.domain.com。我遇到的问题是重定向转到https://www.domain.asia(而不是.com),而.asia域没有安全证书,因此显示警告。

如何访问domain.asia并将其重定向到https://www.domain.com

辅助域与主域停放在同一服务器上。这是我的.htaccess文件:

# redirect to .com
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.co\.uk$ [NC]
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.asia$ [NC]
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]

# redirect to www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]

# redirect to https if not
RewriteCond %{HTTPS} !=on
rewritecond %{HTTP_HOST} ^(www\.)?domain\.com$ [NC]
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

1 个答案:

答案 0 :(得分:2)

你必须使用:

# redirect to .com
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.co\.uk$ [OR,NC]
RewriteCond %{HTTP_HOST} ^(www\.)?domain\.asia$ [NC]
RewriteRule ^(.*)$ https://www.domain.com/$1 [R=301,L]

使用 OR ,使用此选项将规则条件与本地OR结合,而不是隐式AND。