标签归档:重定向

修改.htaccess强制HTTP重定向为HTTPS链接

土木坛子采用HTTPS SSL加密链接形式访问网站有几年了,但一直也可以通过HTTP明文形式访问(国内用户现在无法),我知道这样对于SEO不太好,但也没有去采取措施强制统一两者。

最近,勺子兄燕渡寒潭两位博主都加入了ICDSOFT主机,并使用独立IP和HTTPS SSL加密访问。我想既然使用HTTPS就全站使用吧:把所有HTTP请求强制性重定向为HTTPS。我决定帮助他们设置一下。没想到在土木坛子上使用Google中英文搜索的结果修改.htaccess文件后,无论如何都不行。情急之下询问ICDOSFT客服人员,十分钟不到技术人员就帮我修改好了,只在.htaccess文件里添加了两行规则:

RewriteEngine On 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L] 

看来是将所有HTTP 80端口请求自动跳转成HTTPS(这里的example.com需修改成你的域名)。网上那么多人的方法都不是这样,所以我觉得有必要把它贴到这里,供不是太懂Apache服务器的人参考,总不至于为了添加这么一条规则学习所有的正则表达式和Apache指令。

其实ICDSOFT的客服人员给我修改的规则最后一行里没有301参数,因此只是302临时性转移,对搜索引擎不友好。添加301参数后,就变成了永久性转移——传递原来的权重。此外,将HTTP链接强制301重定向为HTTPS后,点击域名在其它网站留下的HTTP链接也会自动变成HTTPS,有利于用户体验,充分利用好HTTPS保护好访问者的隐私——哪怕TA在你的网站浏览了成人内容也无法被裸奔的网络嗅探。

用HTTPS会有一些与HTTP不一样的地方,需要一点点积累,见招拆招。