我们已经从Hostgator购买了免费的SSL。基本上,当你升级你的包时你会得到它。
现在,我们有一个主域名(www.example.com)和2个子域名(www.sub.example.com)& (www.sub.example.com)。
我已将此代码输入.htaccess:
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]
主域名工作正常,但是当我想要转到子域名时,我会被重定向到主域名=> www.example.com。
我理解它是因为^(.*)$
部分,但对此最好的解决办法是什么?
我希望SSL只能访问主域,http才能访问子域。
答案 0 :(得分:1)
添加条件以从https重定向中排除子域
RewriteEngine On
RewriteCond %{HTTP_HOST} !^(www\.)?sub\.domain\.com
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.example.com/$1 [R=301,L]