将主域重定向到https,但不是子域

时间:2014-07-31 10:49:57

标签: .htaccess redirect https dns

我有一个网站说 example.com 和一个用于www.example.com的SSL。 我想 - 如果有人访问 example.com www.example.com ,他会被重定向到 https://www.example.com/

但如果他去 sub.example.com ,则不应将其重定向到https,即留在http。

我已经在StackOverflow上查看了各种答案,但无法对其进行配置。目前,我使用以下内容:

RewriteCond %{HTTPS} !^on$
RewriteRule (.*) https://www.example.com/$1 [R,L]

这会将 sub.example.com 重定向到https://www.example.com/sub/,这是我不想要的。

请帮忙!

1 个答案:

答案 0 :(得分:0)

您想添加一个检查当前主机名的额外条件。您可以使用%{HTTP_HOST}变量执行此操作。

RewriteCond %{HTTPS} !^on$
RewriteCond %{HTTP_HOST} ^www\.example\.com$
RewriteRule (.*) https://www.example.com/$1 [R,L]