强制单个域的https(复杂实现)

时间:2013-10-05 06:18:41

标签: php apache .htaccess mod-rewrite ssl

我在apache上的专用服务器(单个IP)上运行了一个网站。 多个域指向网站。例如:sub.abc.com,sub.bcdaf.com

我现在为其中一个域(sub.abc.com)购买了一张SSL证书。只有SSL才能在用户访问https://sub.abc.com

时起作用

我想在用户访问http时强制用户https。默认情况下,当他们访问sub.abc.com时,应该转到https://sub.abc.com。我怎么能通过htaccess做到这一点?

请注意,https应仅适用于sub.abc.com,并且应强制用户仅适用于sub.abc.com

我观察到在.htaccess中使用mod_rewrite会影响网站的性能。 请求表明最佳方式。

谢谢,
拉吉

1 个答案:

答案 0 :(得分:0)

你的.htaccess中应该有这样的东西

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]