在服务器中部署到SSL证书后,Apache/Nginx服务器环境强制https跳转设置的方法如下:
第一、Apache 强制HTTPS形式
1、添加文件位置
一般是在网站根目录伪静态文件,如果没有我们需要创建一个.htaccess文件中。
2、强制WWW跳转
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.vpscuxiao.com$ [NC]
RewriteRule ^(.*)$ https://www.vpscuxiao.com/$1 [L,R=301]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.vpscuxiao.com/$1 [L,R=301]
3、强制非WWW跳转
RewriteEngine On
RewriteCond %{HTTP_HOST} !^vpscuxiao.com$ [NC]
RewriteRule ^(.*)$ https://vpscuxiao.com/$1 [L,R=301]
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://vpscuxiao.com/$1 [L,R=301]
根据需要是用WWW,还是非WWW,添加到根目录.htaccess文件中,立即生效。
第二、Nginx 强制HTTPS跳转
1、设置文件位置
一般在当前服务器环境中的对应网站域名的.conf文件,添加到配置环境中。
2、强制WWW跳转
if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
if ($host != www.vpscuxiao.com) { return 301 $scheme://www.vpscuxiao.com$request_uri; }
3、强制非WWW跳转
if ($ssl_protocol = "") { return 301 https://$host$request_uri; }
if ($host != vpscuxiao.com) { return 301 $scheme://vpscuxiao.com$request_uri; }
设置之后,需要重启Nginx之后才可以生效。