配置域名与Https
Posted kyriewang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了配置域名与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配置完毕了
- 最后再试一下效果
引用
感谢以下大神的相关博文
后记
接下来会试着在服务器端配置好自己的数据库,实现通过接口访问云服务器端的数据库
以上是关于配置域名与Https的主要内容,如果未能解决你的问题,请参考以下文章