Nginx 301永久重定向配置以及自动跳转https配置方法
发布日期:2018-09-12如今越来越多的网站已经开始安装SSL证书,只要安装ssl证书之后,可以保障网站的数据安全,关于ssl证书的内容,之前已经介绍过很多了,今天为大家讲解的是Nginx 301永久重定向配置以及自动跳转https配置方法。
一、Nginx 301 重定向跳转不支持 GET 参数的问题描述
首先来看看子凡在 Nginx 配置文件中的一个 301 跳转的配置,看上去这就是一个 Nginx 环境标准通用的 301 重定向配置,并没有错误,也可以实现从 http 到 https 的 301 跳转,但是由于泪雪用户中心的头像调用有较大的开放性和适配度,所以可以直接通过动态的 GET 参数获取头像,例如:http://i.leiue.com/avatar.php?name=leixue,通过 HTTP 状态查询工具查询结果如下图:
301 跳状态已经成功,但是我们仔细看 Location 返回的值就是:https://i.leiue.com/avatar.php?name=leixue?name=leixue,已经不仅仅是将 http 换成 https 了,而是后面的 GET 参数也被重复了一遍,所以也就导致了最后的 301 重定向跳转失败和错误了。
二、Nginx 301 重定向跳转支持 GET 参数的配置方法
通过上述子凡的一些经历做过简单的描述和验证后,只是初步的发现了问题,而接下来需要的就是解决这个问题,那么最简单直接的还是直接上 Nginx 的配置代码:
经过简单的修改后,就已经完美解决问题,有点正则的感觉,所以如果大家在做 Nginx 的 301 跳转的时候可以稍微的注意一下,或者你也在做 301 跳转的时候遇到过一些错误,不妨试试这个方法。
如果用户遇到的问题不能解决,可通过wosign官网客服寻求帮助,凡是选择wosign ssl证书的网站用户,wosign可提供免费一对一的ssl证书技术部署支持,免除后顾之忧。
相关资讯
https双向认证就是客户端获取服务器端的SSL证书,认证服务器端是否为值得信任的主机,SSL证书安装环境,如果访问的站点不受信任,浏览器就会发出警告提示;同时服务器端也会检查客户端证书是不是服务器端所信任的,这样服务器端就能确认,该客户端是不是合法用户,如果不是,就会拒绝为客户端提供服务。
你可以到CA机构购买SSL证书,也可以申请免费的SSL证书如沃通免费SSL证书。购买的话价格有贵的有便宜的。它们的区别功能和加密级别不同,贵的证书加密级别更高功能更多,更容易被信任,比如展示绿色地址栏的EV SSL证书,几乎银行安全级别的都是用EV SSL证书。
Nginx是目前最新的高性能Web服务器,和传统的Apache服务器相比,特别在大量的客户并发连接下,性能要提高10倍以上。很多大型的PHP网站都采用了Nginx服务器。虽然Nginx采用是Linux2.6内核和epull架构的网络I/O模型,但在使用上和Apache还是比较相似,是Apache一个非常不错的替代产品