Nginx如何将HTTP通过301重定向跳转到HTTPS

免费在线PDF转换器/编辑器、文档模板、思维导图,点击查看

网站部署HTTPS加密连接协议后通常在刚开始我们会允许用户通过 HTTP或者HTTPS 两个版本进行自由访问。

在测试 HTTPS 版已经没有问题的情况下那么基于安全性考虑已经没有必要再让用户访问HTTP明文连接版本。

因此我们需要将HTTP版的所有访问强制跳转到HTTPS版,同时为安全起见建议顺手部署HSTS 公钥扎钉功能。

Nginx HTTP 301 HTTPS

主要还是修改虚拟主机的配置文件让 Nginx直接rewrite重写,所以首先我们下找到Nginx虚拟主机配置文件。

诸如LNMP集成安装包等的虚拟主机配置文件位于:

/usr/local/nginx/conf/vhost/

为了方便我们直接使用FTP工具将对应的域名配置文件下载到本地再用Notepad++等编辑器打开编辑:

server { listen 80; #listen [::]:80; server_name www.lovestory.hk lovestory.hk; #将HTTP 301 重定向到 HTTPS 开始 rewrite ^(.*)$ https://$host$1 permanent; #将HTTP 301 重定向到 HTTPS 结束 index index.html index.htm index.php default.html default.htm default.php;
}

如果你此前已配置HTTPS还会看到监听443端口的Server,但我们修改只需要将rewrite代码添加至80端口下。

修改好再通过FTP工具将 conf 文件覆盖此前的目录, 然后利用SSH工具连接服务器再重启下Nginx服务即可。

重启命令:service nginx restart

[指南] 如何配置使用HTTP严格传输安全HSTS

建议顺手部署HSTS公钥扎钉:[指南] 如何配置使用HTTP严格传输安全HSTS

本文来源 蓝点网 原创,由 山外的鸭子哥 整理编辑,其版权均为 蓝点网 原创 所有,文章内容系作者个人观点,不代表 蓝点网 对观点赞同或支持。如需转载,请注明文章来源。
扫码关注蓝点网微信公众号

评论:

2 条评论,访客:2 条,站长:0 条
  1. 游客
    游客发布于: 
    Firefox 54.0 Firefox 54.0 Windows 10 64位版 Windows 10 64位版

    站长,请问一下你这个代码高亮是什么插件?

    • 山外的鸭子哥
      山外的鸭子哥发布于: 
      Google Chrome 59.0.3071.115 Google Chrome 59.0.3071.115 Windows 10 64位版 Windows 10 64位版

      pre code class=”lang-bash” 内容 code pre

      加上英文中括号

发表评论