阿里云Nginx配置https实现域名访问项目(图文教程)


Posted in Servers onMarch 31, 2021

第一步:签署第三方可信任的 SSL 证书

证书可以直接在阿里云里面申请免费的ssl证书

阿里云Nginx配置https实现域名访问项目(图文教程)

登录阿里云账号,在上方搜索栏内搜索ssl,点击ssl证书(应用安全)

阿里云Nginx配置https实现域名访问项目(图文教程)

来到这个页面后点击购买证书

阿里云Nginx配置https实现域名访问项目(图文教程)

如图选择免费版ssl证书,点击支付

阿里云Nginx配置https实现域名访问项目(图文教程)

支付完成后跳转到控制台首页,点击证书申请

阿里云Nginx配置https实现域名访问项目(图文教程)

填写完证书申请表单之后点击下一步

阿里云Nginx配置https实现域名访问项目(图文教程)

点击验证显示验证成功后再提交审核

阿里云Nginx配置https实现域名访问项目(图文教程)

审核通过后点击下载按钮

阿里云Nginx配置https实现域名访问项目(图文教程)

选择nginx旁边的下载

阿里云Nginx配置https实现域名访问项目(图文教程)

下载解压后得到一个.key和.pem文件,到这里,我们的证书申请工作已经做完了,下面可以开始配置https了

阿里云Nginx配置https实现域名访问项目(图文教程)

第二步:配置https

1、centos如何安装nginx可以参考这篇博文:https://segmentfault.com/a/1190000018109309
2、安装完毕后,找到nginx.conf所在的目录,我这里的目录为:/etc/nginx
3、在此目录里面新建一个文件夹cert,用来存放密匙文件
4、点击nginx.conf,配置ssl,**注意,我这里是1.16版本的nginx,1.15之前的配置和这个不一样!!**下面是我的配置:

server {
   listen 443 ssl http2; #配置HTTPS的默认访问端口号为443。此处如果未配置HTTPS的默认访问端口,可能会造成Nginx无法启动。Nginx 1.15.0以上版本请使用listen 443 ssl代替listen 443和ssl on。
   server_name www.example.xyz; #将www.certificatestests.com修改为您证书绑定的域名,例如:www.example.com。如果您购买的是通配符域名证书,要修改为通配符域名,例如:*.aliyun.com。
   root html;

   index index.html index.htm;
   ssl_certificate cert/cert.pem; #将domain name.pem替换成您证书的文件名称。
   ssl_certificate_key cert/cert.key; #将domain name.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;  
 }

如果是1.15之前的nginx版本的话,应该这样配置:

listen 443; #配置HTTPS的默认访问端口号为443。此处如果未配置HTTPS的默认访问端口,可能会造成Nginx无法启动。Nginx 1.15.0以上版本请使用listen 443 ssl代替listen 443和ssl on。
   server_name www.example.xyz; #将www.certificatestests.com修改为您证书绑定的域名,例如:www.example.com。如果您购买的是通配符域名证书,要修改为通配符域名,例如:*.aliyun.com。
   root html;
   ssl on;
   index index.html index.htm;
   ssl_certificate cert/cert.pem; #将domain name.pem替换成您证书的文件名称。
   ssl_certificate_key cert/cert.key; #将domain name.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;  
 }

5、配置反向代理,让默认端口(一般是80)代理我们项目的端口8080,也就是说我们可以通过访问80端口来达到访问8080端口的效果

server {
   listen 443 ssl http2; #配置HTTPS的默认访问端口号为443。此处如果未配置HTTPS的默认访问端口,可能会造成Nginx无法启动。Nginx 1.15.0以上版本请使用listen 443 ssl代替listen 443和ssl on。
   server_name www.example.xyz; #将www.certificatestests.com修改为您证书绑定的域名,例如:www.example.com。如果您购买的是通配符域名证书,要修改为通配符域名,例如:*.aliyun.com。
   root html;

   index index.html index.htm;
   ssl_certificate cert/cert.pem; #将domain name.pem替换成您证书的文件名称。
   ssl_certificate_key cert/cert.key; #将domain name.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://ip:8080; //ip写你自己服务器的ip
  }  
 }

配置完后保存,然后重启nginx

nginx -s reload
 sudo systemctl restart nginx

然后再查看防火墙是否打开,一般是关闭的,关闭的话就不需要打开了。如果是打开状态的话就开启服务器的默认端口(一般是80)和443端口

然后如果是云服务器的话还需要配置安全组,打开服务器管理控制台,点击本地实例安全组

阿里云Nginx配置https实现域名访问项目(图文教程)

点击手动添加或者快速添加,添加默认端口80和443端口进来,保存

阿里云Nginx配置https实现域名访问项目(图文教程)

下面就是配置域名解析了,来到域名控制台,点击解析

阿里云Nginx配置https实现域名访问项目(图文教程)

点击添加记录

阿里云Nginx配置https实现域名访问项目(图文教程)

然后把你的服务器的公网ip地址解析进来,点击确认

阿里云Nginx配置https实现域名访问项目(图文教程)

解析完毕后等10分钟差不多就可以去访问域名了,访问项目的swagger文档,可以看见已经变成https了(这里需要手动敲https才行)

阿里云Nginx配置https实现域名访问项目(图文教程)

可以看到成功访问项目

参考链接 :

Nginx配置https实现域名访问项目 : https://www.jianshu.com/p/e7b9622a63ed

到此这篇关于阿里云Nginx配置https实现域名访问项目(图文教程)的文章就介绍到这了,更多相关Nginx配置https域名访问内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Nginx代理同域名前后端分离项目的完整步骤
Mar 31 Servers
扩展多台相同的Web服务器
Apr 01 Servers
Nginx反向代理至go-fastdfs案例讲解
Aug 02 Servers
Nginx缓存设置案例详解
Sep 15 Servers
Linux下使用C语言代码搭建一个简单的HTTP服务器
Apr 13 Servers
Windows Server 2008 修改远程登录端口以及配置防火墙
Apr 28 Servers
nginx rewrite功能使用场景分析
May 30 Servers
阿里云服务器部署RabbitMQ集群的详细教程
Jun 01 Servers
winserver2019安装软件一直卡在应用程序正在为首次使用做准备
Jun 10 Servers
解决Git推送错误non-fast-forward的方法
Jun 25 Servers
在虚拟机中安装windows server 2008的图文教程
Jun 28 Servers
Win10系统搭建ftp文件服务器详细教程
Aug 05 Servers
详解Nginx 工作原理
fastdfs+nginx集群搭建的实现
Nginx域名转发https访问的实现
Mar 31 #Servers
Nginx本地目录映射实现代码实例
Mar 31 #Servers
nginx 防盗链防爬虫配置详解
Mar 31 #Servers
Nginx服务器如何设置url链接
nginx搭建图片服务器的过程详解(root和alias的区别)
Mar 31 #Servers
You might like
PHP 根据key 给二维数组分组
2016/12/09 PHP
PHP simplexml_load_file()函数讲解
2019/02/03 PHP
缓动函数requestAnimationFrame 更好的实现浏览器经动画
2012/12/07 Javascript
jQuery+css+html实现页面遮罩弹出框
2013/03/21 Javascript
随窗体滑动的小插件sticky源码
2013/06/21 Javascript
使用jquery中height()方法获取各种高度大全
2014/04/02 Javascript
javascript trim函数在IE下不能用的解决方法
2014/09/12 Javascript
JavaScript使用yield模拟多线程的方法
2015/03/19 Javascript
JavaScript的Polymer框架中dom-repeat与VM的相关操作
2015/07/29 Javascript
基于zepto的移动端轻量级日期插件--date_picker
2016/03/04 Javascript
jQuery手指滑动轮播效果
2016/12/22 Javascript
Easyui笔记2:实现datagrid多行删除的示例代码
2017/01/14 Javascript
浅谈js中用$(#ID)来作为选择器的问题(id重复的时候)
2017/02/14 Javascript
原生js仿淘宝网商品放大镜效果
2017/02/28 Javascript
详解webpack 多页面/入口支持&公共组件单独打包
2017/06/29 Javascript
史上最全JavaScript常用的简写技巧(推荐)
2017/08/17 Javascript
angular 实时监听input框value值的变化触发函数方法
2018/08/31 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
聊聊Vue 中 title 的动态修改问题
2019/06/11 Javascript
什么时候不能在 Node.js 中使用 Lock Files
2019/06/24 Javascript
layui复选框的全选与取消实现方法
2019/09/02 Javascript
Python修改Excel数据的实例代码
2013/11/01 Python
简单的Python2.7编程初学经验总结
2015/04/01 Python
对numpy中数组转置的求解以及向量内积计算方法
2018/10/31 Python
python过滤中英文标点符号的实例代码
2019/07/15 Python
命令行运行Python脚本时传入参数的三种方式详解
2019/10/11 Python
Python基于正则表达式实现计算器功能
2020/07/13 Python
Django多数据库联用实现方法解析
2020/11/12 Python
Python爬虫简单运用爬取代理IP的实现
2020/12/01 Python
网购亚洲时装、美容产品和生活百货:YesStyle
2016/09/15 全球购物
vue项目实现分页效果
2021/03/24 Vue.js
最新创业融资计划书
2014/01/19 职场文书
党课培训主持词
2014/04/01 职场文书
个人租房协议书
2014/04/09 职场文书
学校募捐倡议书
2014/05/14 职场文书
法人代表授权委托书范文
2014/09/10 职场文书