专栏首页海加尔金鹰的专栏Nginx学习日志(三)配置SSL证书(网站由http转成https)

Nginx学习日志(三)配置SSL证书(网站由http转成https)

Nginx学习日志

Nginx学习日志(一)简单入门 Nginx学习日志(二)通过反向代理将不同域名映射到不同的端口

发现现在很多网站都变成了https,并且在浏览器当中如果是http类型的网站,还会提示网站不安全,所以打算将自己的博客换成https类型。 记录一下HTTP升级到HTTPS的过程。 网上看着很简单,但实际上还是遇到了不少的问题,不过还好,最终都一一解决了

什么是SSL证书?

SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。

参考资料: https://yq.aliyun.com/articles/602965 https://www.sohu.com/a/225956682_596521

如何获取免费的SSL证书?

11种免费获取SSL证书的方式: https://www.toolmao.com/get-free-ssl (一篇非常详细的文章) 由于我是使用的阿里云服务器,所以是通过阿里云当中获取的免费SSL证书。

nginx里面如何配置SSL证书?

由于我在阿里云服务器上的网站使用了Nginx,这里主要记录nginx的ssl证书配置过程。

配置过程

第一步: 将阿里云获取到的SSL证书下载下来。一般是两个文件:xxxx.pem 以及 xxxx.key 第二步: 在Nginx的安装目录下创建cert目录,并将下载的文件全部拷贝进去。 第三步: 修改nginx.conf配置信息 将原来的HTTP跳转重定向到https上面

    server { 
	listen 80; 
	server_name hjljy.cn,www.hjljy.cn; 
	location / { 
		return 301 https://www.hjljy.cn$request_uri;
		} 
	}

配置https的相关跳转

 server {
        listen       443 ssl;
        server_name  www.hjljy.cn;
		ssl on;
        ssl_certificate      ../cert/1864683_www.hjljy.cn.pem;   #注意这里    指定第二步当中拷贝的文件位置
        ssl_certificate_key  ../cert/1864683_www.hjljy.cn.key;
		ssl_session_timeout 5m;
 		ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
 		ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
 		ssl_prefer_server_ciphers on;
        location / {
            	proxy_pass http://127.0.0.1:8081;   
        		proxy_set_header  Host $host:$server_port;
        		proxy_set_header  X-Real-IP  $remote_addr;
        	}
	}

第四步: 重启nginx 在安装目录bin下面输入:./nginx -s reload 报如下错误 因为安装nginx时未加载ssl模块 nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:84 处理方式一:https://www.cnblogs.com/ghjbk/p/6744131.html 处理方式二:直接重新安装nginx 在安装时记得加载ssl模块支持。同时记得备份重要配置文件。 最后重启nginx就可以了。

问题总结

主要遇到了三个问题 第一个就是nginx未加载ssl模块报错的问题 第二个就是证书文件位置的问题 第三个花费时间最长,是属于自己的博客软件的问题。排查了很久才想到这个问题。 我使用的是solo博客软件 在软件初始化的时候,当时配置的网络地址是http类型的,导致在更换到https之后,部分静态资源无法获取到,存在资源降级的问题(就是开始是https的连接类型,然后里面有一些是http类型的连接,这部分的静态资源获取不到)。重新配置重启一下就好了。

参考资料

Nginx/Tengine服务器安装SSL证书


标题:Nginx学习日志(三)配置SSL证书(网站由http转成https) 作者:海加尔金鹰 地址:https://www.hjljy.cn/articles/2019/02/28/1551347168588.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • springboot整合MongoDB

    网上安装教程一大堆,不过官方网站的教程最详细:官网windows下安装MongoDB

    海加尔金鹰
  • Nginx学习日志(六)Linux下设置开机自启动

    最近升级了下linux服务器配置,重启之后,发现要敲一堆命令行,挺麻烦的,能开启自启动就好了

    海加尔金鹰
  • JAVA通过epublib解析EPUB格式的电子书

    就像视频文件有 MP4,AVI,RMVB 等等一样!电子书也有很多种格式:一文看懂mobi,azw3,epub格式电子书

    海加尔金鹰
  • 机器学习人工学weekly-2018/4/15

    注意下面很多链接需要科学上网,无奈国情如此 1. DeepMind的新工作,不用地图在城市里导航 Learning to navigate in cities ...

    windmaple
  • AS3!INT

    一般 !class 表示 class为null || class 为underfined

    py3study
  • poj 1068 模拟

    大概题意就是告诉你有个n个小括号,每一个“)”左边有多少个“(”都告诉你了,然后让你求出每一对括号之间有多少对括号(包含自己本身)。

    xindoo
  • 使用 Docker 搭建 miniflux 和 RSSHub,重建资讯订阅体系

    去年开始博主大致确立了一个以 RSS 聚合为主,其它信源随缘查看的资讯订阅流程。一大需求是同步不同客户端的阅读记录,需要一个服务器端运行的订阅器。当时用的是 T...

    zgq354
  • 不想凌晨上线的你,不考虑徒手撸一个灰度发布系统?

    现在的你,每天还是等到凌晨上线吗?反正最近的我不在凌晨上线,我也不区分业务的低谷和高峰,一律直接上线,我靠的不是运气,也不是胆量,而是有一套成熟的机制再给我们做...

    用户5166556
  • Spring框架源码分析(IoC):Resource、ResourceLoader和容器之间的关系

    Resource接口定义了资源常见的操作,抽象出了一些通用方法,再由不同的实现类去自定义。直接上Resource源码:

    星如月勿忘初心
  • 云点播“你问我答”年度汇总,2020你关心的问题都在这里!

    ? ? 2020年过去了,衷心感谢大家又一年的陪伴!这一年云点播不断上新与优化,坚持打磨更好的产品与服务,为广大音视频开发者们提供更强大的技术支撑、更丰富的产...

    腾讯云视频

扫码关注云+社区

领取腾讯云代金券