运维、服务器 正文 http转https,ssl认证,nginx配置彻底杜绝运营商插广告.
相信这个问题,很多人都遇到过,网上有很多人说了很多解决方案,但是个人认为还是https靠谱。
下面是思路,因为比较生产比较急,所以过程没有保留,现在也没工夫重新整一遍
一。测试环境测试,自己生成ssl认证
http://www.90qj.com/?post=304
https://my.oschina.net/DL88250/blog/783469
测试环境,自己生成不信任的认证,需要开启ssl支持,同时nginx默认是不支持多域名配置https,如果想配置多个域名,需要开启
配置:
#server
#{
# listen 80;
# server_name 域名;
# rewrite ^(.*) https://域名$1 permanent;
# location / {
# proxy_pass http://主机+ 端口;
# }
#}
#配置SSL证书部署HTTPS网站
#server {
# server_name 域名;
# listen 443;
# ssl on;
# ssl_certificate /home/root/nginx-1.9.0/conf/1_zuidongxi.com_bundle.crt;
# ssl_certificate_key /home/root/nginx-1.9.0/conf/pay_zuidongxi.key;
# 若ssl_certificate_key使用33iq.key,则每次启动Nginx服务器都要求输入key的密码。
# location / {
#proxy_redirect http://www.google.com/ /;
#proxy_cookie_domain google.com 域名;
# proxy_pass 主机+端口;
#proxy_set_header Accept-Encoding "";
#proxy_set_header User-Agent $http_user_agent;
#proxy_set_header Accept-Language "zh-CN";
#proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=zh-CN:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2W1IQ-Maw";
# }
#}
方法网上很多,很简单,就没必要详细介绍了。
二。申请免费ssl认证startssl
http://blog.weiliang.org/linux/632.html
测试可以后,就申请受信用的证书认证,在startssl申请免费的证书,这个方法,申请下来配置后,发觉会出很多问题,个别浏览器不支持认证,seesion会丢失,手机苹果不支持等等。查了资料后,发现是第三方认证,有些浏览器不识别,就比如上面的链接,找到根链接合并,但是还是不能解决我的问题,折腾很长时间,都是不行,之后看到一篇关于认证的报道,说谷歌火狐16年5月将不支持之后的startssl认证,包括沃通等,说是认证流程不严格不规范。
三。申请免费1年阿里云ssl认证
http://www.chinaz.com/web/2016/1207/623575.shtml 申请方法
这个是阿里云的1年免费认证,按照方法,域名解析总是不行,因为域名一直老板在弄,所以我这里不行,就让老板帮申请了,昨天申请下来,按照官方推荐nginx配置方法,配置后测试成功,所有问题都没有。
配置如下:
最后总结一下:
如果自己学习,nginx配置https或者是tomcat配置,直接自己生成认证即可。
测试环境可以申请免费的认证,比如沃通(目前不行),startssl(我的苹果手机测试不通,PC都可以),阿里云(申请比startssl要繁琐点).
正式环境,如果有钱还是买一个,免费的,还是阿里云吧,其他的可能突然就申请不了,或者申请下来不适应项目环境。一般申请的会有官方推荐配置,请按照官方推荐配置来配置。