SSL数字证书Nginx配置部署
由于小程序和Ios端的需要,公司的项目需要从原来的http协议扩展到https协议,因为项目本来就有采用nginx做了负载均衡,但是之前配置nginx的时候并没有配置关于https的内容,所以需要做这部分的内容。关于nginx实现动静分离和负载均衡可看我之前的博客。https://i.cnblogs.com/posts?categoryid=1026166
1.数字证书生成
证书的购买要看公司的具体需求,我这里选用的是阿里云,关于证书部分的官网是这个地址:https://help.aliyun.com/product/28533.html?spm=5176.video54216.3.1.JkjOas
我选定的是最便宜的一款,不要钱,不过要找到它可能得费点时间哦,毕竟免费的东西嘛,阿里也把它隐藏的比较深。

它的缺点就是,只能保护一个域名,不支持通配符域名(意思就是说,比如你这个证书绑定的是baidu.com,它就只能保护www.baidu.com和baidu.com,而不能保护注入a.baidu.com这类子级域名),还有就是只能用一年。并且一个阿里云账户只能购买20个证书。
总的来说,对于我们搞测试来说,够用了,如果用作商业用途,那就最好建议花钱买。
购买过程我就不赘述了,购买完成以后,来到我的阿里云控制台,就可以看到刚才购买的证书了。

接下来一步是补全信息,主要是你想要绑定的域名和一些你的个人信息,如下图所示。

因为我选择的域名验证类型是DNS验证,所以还需要到dns配置一番,具体怎么配置在整个阿里云的平台上都有详实的记录。我就不赘述了。
审核很快,因为都是机器审核的,差不多也就10分钟就审核成功了。审核成功后的列表如下。以下是我申请的两个证书。

2.为nginx配置ssl证书
点击上述图片中的下载项,就进入如下页面。

其实这个页面把具体的操作说的十分清楚,并且还有视频教程。我简要地再总结一下。
第一步:下载证书for nginx
点击下载,就会得到一个证书文件夹,其中包含两个文件。

第二步:在nginx的conf目录下新建cert文件夹,将上述的两个文件放入该文件夹
第三步:修改nginx关于https部分的配置
我就直接贴我的配置吧:
server {
listen 443;
server_name www.wonyen.com wonyen.com;
ssl on;
root html;
index index.html index.htm;
ssl_certificate cert/xxxxxxxx684.pem;
ssl_certificate_key cert/xxxxxxxxxx0684.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 ~ \.(gif|jpg|jpeg|png|bmp|swf|eot|svg|ttf|woff|mp3|mp4|wav|wmv|flv|f4v|icon)$ {
root apache-tomcat-8.0.9-windows-x86-yipin-8081/apache-tomcat-8.0.9/webapps/ROOT;
expires 30d;
}
location ~ \.(json|txt)$ {
root apache-tomcat-8.0.9-windows-x86-yipin-8081/apache-tomcat-8.0.9/webapps/ROOT;
expires 15d;
}
location ~ \.(css|js)$ {
root apache-tomcat-8.0.9-windows-x86-yipin-8081/apache-tomcat-8.0.9/webapps/ROOT;
expires 1d;
}
location ~ ^/\w+Att{
proxy_pass http://xdxfile.com;
}
location ~ ^/\w+Fill{
proxy_pass http://xdxfile.com;
}
location = /crowdFundSave{
proxy_pass http://xdxfile.com;
}
location = /crowdFundRewardSave{
proxy_pass http://xdxfile.com;
}
location = /garbageCategorySave{
proxy_pass http://xdxfile.com;
}
location = /mailTestAjax{
proxy_pass http://xdx8082.com;
}
location = /mailSendAjax{
proxy_pass http://xdx8082.com;
}
location = /mailOldAjax{
proxy_pass http://xdx8082.com;
}
location = /wechatAuthority{
proxy_pass http://xdxall.com;
}
location = /compressImg{
proxy_pass http://xdxfile.com;
}
location = /compressImgAll{
proxy_pass http://xdxfile.com;
}
location = /lifeMenuHome{
proxy_pass http://xdxfile.com;
}
location = /lifeOrderHome{
proxy_pass http://xdxfile.com;
}
location = /lifeCenterAjax{
proxy_pass http://xdxfile.com;
}
location = /startBusiness{
proxy_pass http://xdxfile.com;
}
location ~ ^/ueditor1_4_3{
proxy_pass http://xdxfile.com;
}
location = /freightByIp{
proxy_pass http://xdx8082.com;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ .*$ {
index index;
proxy_pass http://xdx.com;
}
error_page 404 /Error404.jsp;
error_page 500 502 503 504 /Error404.jsp;
location = /Error404.jsp {
proxy_pass http://xdxfile.com;
}
}
有关于ssl的配置集中在7--12行,其他的配置就跟普通的http配置无二致。
第四步:重启nginx服务器
经过如上几个步骤,你的nginx服务器就既可以支持http,又可以支持https了,是不是很简单,赶紧试试吧。
SSL数字证书Nginx配置部署的更多相关文章
- [转]浅谈https\ssl\数字证书
浅谈https\ssl\数字证书 http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的 ...
- 浅谈https\ssl\数字证书
全球可信的SSL数字证书申请:http://www.shuzizhengshu.com 在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕 ...
- 【转】浅谈https\ssl\数字证书
转载请注明出处:http://www.cnblogs.com/P_Chou/archive/2010/12/27/https-ssl-certification.html 全球可信的SSL数字证书申请 ...
- https证书/即SSL数字证书申请途径和流程
国际CA机构GlobalSign中国 数字证书颁发中心网站:http://cn.globalsign.com https证书即SSL数字证书,是广泛用 于网站通讯加密传输的解决方案,是提供通信保 ...
- HTTPS协议工作原理(SSL数字证书)
目录 HTTPS SSL协议的工作过程 SSL数字证书的查看 HTTPS 我们都知道HTTP协议是明文传输的,并且不能验证对方的身份,而且不能保证数据的完整性.而当我们在网络上进行购物电子交易时,电子 ...
- goDaddy SSL证书 Nginx配置全流程 (转)
好长时间没动过这玩意了,今天突然用到,忘的一干二净.在此做个笔记吧! 一.购买Godaddy SSL证书 1.打开Godaddy官网 http://www.godaddy.com/: 2.点击网站导航 ...
- 【HTTPS】自签CA证书 && nginx配置https服务
首先,搭建https服务肯定需要一个https证书.这个证书可以看做是一个应用层面的证书.之所以这么说是因为https证书是基于CA证书生成的.对于正式的网站,CA证书需要到有资质的第三方证书颁发机构 ...
- Linux centosVMware Nginx负载均衡、ssl原理、生成ssl密钥对、Nginx配置ssl
一.Nginx负载均衡 vim /usr/local/nginx/conf/vhost/load.conf // 写入如下内容 upstream qq_com { ip_hash; 同一个用户始终保持 ...
- Nginx负载均衡、SSL原理、生成SSL密钥对、Nginx配置SSL
6月12日任务 12.17 Nginx负载均衡12.18 ssl原理12.19 生成ssl密钥对12.20 Nginx配置ssl扩展 针对请求的uri来代理 http://ask.apelearn.c ...
随机推荐
- bzoj 4012: [HNOI2015]开店 主席树
Description 风见幽香有一个好朋友叫八云紫,她们经常一起看星星看月亮从诗词歌赋谈到 人生哲学.最近她们灵机一动,打算在幻想乡开一家小店来做生意赚点钱.这样的 想法当然非常好啦,但是她们也发现 ...
- css清除浮动主要方法
1.浮动元素尾部添加空div标签,设置css为clear:both: 缺点:如果页面浮动布局多,则需要添加较多div: 2.父级元素定义伪类:after和zoom:1: .father:after{d ...
- 【简单理解】gulp和webpack的区别
Gulp和Webpack的基本区别: gulp可以进行js,html,css,img的压缩打包,是自动化构建工具,可以将多个js文件或是css压缩成一个文件,并且可以压缩为一行,以此来减少文件体积,加 ...
- CentOS下LAMP环境安装配置
本来几下yum都能装好的,yum却出问题了,报错:AttributeError: 'YumBaseCli' object has no attribute '_not_found_i',可能是某个文件 ...
- 【Python3之模块及包的导入】
一.模块导入 1.定义 Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Python 对象定义和Python语句. 模块让你能够有逻辑地组织你的 Python ...
- IBM的websphere MQ的c#使用(一)
接上篇的MQ配置.利用C#实现MQ消息的收发.源码 1.需要引入的dll是amqmdnet.dll 2.app.config配置 <?xml version="1.0" en ...
- 【转】Jenkins 安装与配置
基本配置: 1.Linux安装配置jdk环境 1.1.上传到 Linux 服务器:例如: 上传至: cd /usr/local 1.2.解压: rpm -ivh jdk-8u111-linux-x64 ...
- kindeditor 上传下载文件
jsp代码 1 <script type="text/javascript" src="${pageContext.request.contextPath}/kin ...
- [整理]HTTPS和SSL证书
在互联网安全通信方式上,目前用的最多的就是https配合ssl和数字证书来保证传输和认证安全了.本文追本溯源围绕这个模式谈一谈. 名词解释 首先解释一下上面的几个名词: • https:在http(超 ...
- 在React中你真的用对了Ajax吗?
通过AJAX加载初始数据 通过AJAX加载数据是一个很普遍的场景.在React组件中如何通过AJAX请求来加载数据呢?首先,AJAX请求的源URL应该通过props传入:其次,最好在component ...