最近有个朋友用做了个网站,上了ssl证书,启用全站https加密。可是配置完之后发现http还是可以访问的,这样就导致了用户无法强制进入https加密模式,后来那个朋友找我帮忙解决,我参考了一下百度搜到的解决方案,发现都是用不了的,会重复循环301导致网站打不开,于是我就看了一些伪静态方面的文档,然后写了.htaccess的重定向规则来实现http强制跳转到https访问网站。
重要提示:必须将代码放到.htaccess文件内容的最前面,以保证重定向优先权,如果与本身有的规则重复,只需写4、5行即可。
<IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteCond %{SERVER_PORT} !^443$ RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R=301] </IfModule>保存以上代码到.htaccess,如果无法实现,请用 notepad++ 编辑器保存文件。