配置域名与Https
前言
在之前的内容里,我们已经实现了部署SpringBoot项目到云服务器,但是当时用的是直接通过ip+端口的方式访问的,在之后如果是想对接上自己开发的小程序的话,必须要https的地址才行,因此今天我们来试试怎么为我们的后台配置域名与SSL证书
部署前的准备
- 云服务器
- 已经在云服务器上跑通的SptringBoot项目
最终效果
步骤
配置域名
购买域名
我们直接在腾讯云的官网上购买域名即可,如果没有什么特别的要求,大概也就20/年的价格,还是很便宜的
购买流程就不多啰嗦了,和普通购物一样
域名绑定
购买成功之后,我们就需要把域名与我们的云服务器绑定了,如下图所示点击域名的解析按钮进入绑定页面
在绑定页面点击添加记录后,需要关注的就只有主机记录和记录类型了,一般分别填写@和自己的云服务器ip即可
输入完上面的内容后,点击保存即可,至此域名就算配置结束了
域名备案
所有域名都是需要备案的,不过短时间内不备案大概也不会有影响。备案的话大概就是提交一些身份证之类的信息给相应部门进行审核,在腾讯云里搜索网站备案就可以找到入口了,目前我也是刚刚申请备案,暂时还在审核中,所以就不在此赘述了。
配置https
申请SSL证书
https按我的理解就是http+SSL验证,所以我们第一步就是申请一个SSL证书,入口和上面申请域名类似,在腾讯云首页搜索SSL证书就可以找到了,这里我们个人使用就申请一个免费证书就可以了,叫做免费版DVSSL证书
下载SSL证书
申请好后,在证书管理界面把证书下载下来解压,之后通过Nginx配置时需要Nginx文件夹里的文件
配置Nginx
Nginx理解
Nginx按照百度百科的说法,是一个高性能的HTTP和反向代理web服务器。按我的菜鸟级理解,就是我们通过域名访问到云服务器之后分发请求的东西。由于https只支持443端口的访问,当我们用户通过https请求时,就会访问到Nginx上,Nginx再帮我们把请求分发到不同项目上
云端安装Nginx
安装比较简单,直接执行如下指令即可
yum install openssl-devel nginx
配置Nginx
- 进入Nginx文件夹内,创建ssl文件夹
cd /etc/nginx/
mkdir ssl
- 通过xftp导入ssl证书文件到该ssl文件夹内
- 在本地按照如下内容创建一个类似wangxxx.conf的配置文件,通过xftp导入到/etc/nginx/conf.d/文件夹下,注意域名和证书公钥、私钥记得改成自己的
server{
listen 80; #表示监听80端口
server_name wangxxx.cn www.wangxxx.cn;
location / { #将80端口强制转为https
rewrite (.*) https://www.wangxxx.cn$1 permanent;
}
}
server
{
listen 443 ssl; #表示监听443端口即https
server_name wangxxx.cn www.wangxxx.cn;
ssl_certificate /etc/nginx/ssl/1_wangxxx.cn_bundle.crt; #证书公钥文件路径
ssl_certificate_key /etc/nginx/ssl/2_wangxxx.cn.key; #证书私钥文件路径
ssl_session_timeout 5m; #5分钟session会话保持
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / { #跳转到实际应用
proxy_pass http://127.0.0.1:8080;
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;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
4. 启动Nginx
service nginx restart
至此就算整个https配置完毕了
- 最后再试一下效果
引用
感谢以下大神的相关博文
后记
接下来会试着在服务器端配置好自己的数据库,实现通过接口访问云服务器端的数据库
最新文章
- Alpha阶段第三次Scrum Meeting
- isMobile
- spring数据源配置
- HDU 4833 Best Financing(DP)(2014年百度之星程序设计大赛 - 初赛(第二轮))
- 破解金盘gdlisxp系统
- Java组待开发的任务
- android Activity的杂乱总结
- arm 交叉编译时 gcc 的 Options
- 个人收藏的flex特效网址【经典中的极品】
- js单条新闻向上滚动
- MVC4+Springnet+Nhibernate学习系列随笔(一)
- Hadoop学习之HBase
- Linux Shell 示例精解(第七章 gawk编程)转载
- jsoup -- xml文档解析
- 【echart】学习笔记
- 通过JDBC连接数据库(MySql为例)并读取数据库信息--JSP基础
- (Linux)CentOS7下安装JDK 1.8
- php7 curl返回false error返回空串
- Neo4j学习案例【转】
- python 随机数模块 -- random
热门文章
- 有关Kafka的那些事
- Oracle12c 使用总结
- RTThread DFS文件系统使用: 基于使用SFUD驱动的SPI FLASH之上的ELM FATFS文件系统
- K8S环境的Jenkin性能问题处理续篇(任务Pod设置)
- c语言gets函数
- [源码阅读] 阿里SOFA服务注册中心MetaServer(1)
- Spring Boot+Spring Security+JWT 实现 RESTful Api 认证(一)
- ubuntu20 使用命令安装 mysql
- MySql 关闭 bin 和 log 日志
- 从0到1进行Spark history分析