宅男福利社吧
www.fulis.net

NGINX下http强制跳转https的几种方法分享

现在越来越多的网站都开启了 https 访问了,一来安全,二来对搜索引擎也比较友好。三来嘛,肯定是市面上有大量的免费 SSL 证书,比如腾讯云、阿里云和景安都有提供免费的证书。在这里记录一下 http 强制跳转 https 的方法,为 fulis.net 日后开启 SSL 做个铺垫。

首先要找到你网站的配置文件,如果使用的是军哥的 LNMP 脚本,路径在 /usr/local/nginx/conf/vhost/,如果是自己手动安装的nginx,Centos 7 配置文件一般在 /etc/nginx/conf.d/,具体哪个文件,就看你自己当时的配置了。

我们要先配置好一个监听 443 端口的 server,然后就可以在监听 80 端口的 server 做以下的修改了。

正常来说,这个 server 是这样的

listen       80;

server_name  www.fulis.com;

…….

我们直接在这两行的下面添加

方法一 (这是最古老的写法,不推荐)

rewrite ^(.*)$  https://$host$1 permanent; 

方法二  (比较推荐)

return     301 https://$server_name$request_uri; 

方法三 如果你有多个域名绑定在一起,可以只设定某些域名强制跳转

if ($host = “1.fulis.net”) {

       rewrite ^/(.*)$ https://1.fulis.net permanent;

    }

方法四

方法四跟之前的都不一样,我们不需要另外监听 443 端口的 server,而是都放在一起,像这样

listen 80;

listen 443 ssl http2;

server_name fulis.net www.fulis.net;

if ($server_port !~ 443){

    rewrite ^(/.*)$ https://$host$1 permanent;

}

赞(0) 打赏
未经允许不得转载:福利社 » NGINX下http强制跳转https的几种方法分享
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

福利社传送门

淘福利买买买

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏