通过 .htaccess 设置重定向实现强制 https 访问

     日常     2664次   

如果已经购买并配置好了 SSL 证书,想要将 http 直接重定向到 https 访问,可以用 Apache 的 .htaccess 文件来设置,具体代码如下:

只需要将下列代码任选其一,放到 .htaccess 文件中即可,如果 .htaccess 文件中已经有内容,请将重定向代码放在最前面。

代码 1(需要修改代码中的 domain.com 为你自己的域名):

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

代码 2 (需要修改代码中的 domain.com 为你自己的域名):

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

代码 3(无需修改):

RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]

附加域或子域跳转的问题

如果在主域名根目录(public_html)里的.htaccess文件中添加了以上代码,将作用于该主机里的所有站点,也就是附加域、子域也会强制使用https访问,如果不希望这样,可以在相应的域名根目录的.htaccess文件中添加以下代码:

RewriteCond %{HTTPS} !=off

发表新评论