将主域和support.example.com重定向到https,但所有其他子域除外

时间:2016-04-15 10:14:13

标签: apache .htaccess mod-rewrite ssl

我正在为用户名创建通配符子域,我还为support.example.com的支持中心创建了子域

我已在主域(example.com)和(support.example.com)上安装了SSL证书,并使用以下.htaccess自动重定向到https网址。

RewriteCond %{HTTP_HOST} ^[^.]+\.[^.]+$
RewriteRule (.*) http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

但是动态创建了用户名的所有其他通配符子域,但它们没有SSL证书。

我希望example.com和support.example.com重定向到https以及仅限http的所有其他子域。

任何人都可以告诉我我在htaccess中所做的更改:)

1 个答案:

答案 0 :(得分:0)

第一个RewriteRule在做什么?

但是,我建议你可以在第二个RewriteCond添加RewriteRule以仅在example.com和support.example.com上重定向到https:

RewriteCond %{HTTPS} off
RewriteCond %{HTTP_HOST} ^(support\.)?example\.com$
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]