前言

在之前的内容里,我们已经实现了部署SpringBoot项目到云服务器,但是当时用的是直接通过ip+端口的方式访问的,在之后如果是想对接上自己开发的小程序的话,必须要https的地址才行,因此今天我们来试试怎么为我们的后台配置域名与SSL证书

部署前的准备

  1. 云服务器
  2. 已经在云服务器上跑通的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
  1. 进入Nginx文件夹内,创建ssl文件夹
cd /etc/nginx/
mkdir ssl
  1. 通过xftp导入ssl证书文件到该ssl文件夹内

  2. 在本地按照如下内容创建一个类似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配置完毕了

  1. 最后再试一下效果

引用

感谢以下大神的相关博文

  1. 腾讯云服务器配置https访问证书-nginx(极简)
  2. Centos7.3防火墙配置
  3. 服务器绑定自己的域名-腾讯云
  4. nginx启动成功进程正常,浏览器访问不了,欢迎页面不出现

后记

接下来会试着在服务器端配置好自己的数据库,实现通过接口访问云服务器端的数据库

配置域名与Https的更多相关文章

  1. java项目配置域名(tomcat直接配置 or 使用nginx反向代理)

    一:  tomcat直接配置域名:https://blog.csdn.net/qq_36330228/article/details/78516160 二: 使用nginx进行反向代理 tomcat服 ...

  2. [转帖]在 k8s 中通过 Ingress 配置域名访问

    在 k8s 中通过 Ingress 配置域名访问 https://juejin.im/post/5db8da4b6fb9a0204520b310 在上篇文章中我们已经使用 k8s 部署了第一个应用,此 ...

  3. [转帖]一个ip对应多个域名多个ssl证书配置-Nginx实现多域名证书HTTPS

    一个ip对应多个域名多个ssl证书配置-Nginx实现多域名证书HTTPS https://home.cnblogs.com/u/beyang/ 一台服务器,两个域名 首先购买https,获取到CA证 ...

  4. 配置tomcat的https域名

    配置tomcat的https域名: <Connector port=" protocol="org.apache.coyote.http11.Http11NioProtoco ...

  5. iis 配置多域名,多https

    当一个https的请求到达IIS服务器时,https请求为加密状态,需要拿到相应的服务器证书解密请求.由于每个站点对应的证书不同,服务器需要通过请求中不同的主机头来判断需要用哪个证书解密,然而主机头作 ...

  6. Ubuntu下配置apache开启https

    一.HTTPS简述随着网络的日常,信息安全越来越重要,传统的网站都是http协议明文传输,而HTTPS协议是由SSL+HTTP协议构建的可进行加密传输.身份认证的网络协议,比http协议安全. 那ht ...

  7. Windows下Nginx配置SSL实现Https访问(包含证书生成)

    Vincent.李   Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...

  8. 配置WinRM的Https

    1. 打开IIS管理器,选中IIS服务根节点,然后在主内容页选中IIS条目下的服务器证书双击: 2. 在新出现的服务器证书面板下点右边一列的创建自签名证书 3. 证书名称是:名称(这里强调一下,证书的 ...

  9. Nginx多个域名,https redirect to http

    背景描述:Nginx绑定多个域名,其中一个域名配置了https,如域名A:https://www.aaa.com:另外的域名B(http://www.bbb.com)没有配置SSL证书, 问题:以ht ...

随机推荐

  1. Gitlab集成Sonarqube自动检测代码并发送报告给提交者

    使用gitlab-ci.sonarqube.sonar-scanner 实现如下功能 1.一旦提交代码就进行代码质量检测 2. 发送检测报告邮件给提交者 先来看下最终结果,邮件中有检测报告,具体bug ...

  2. (转载)CPU基础知识

    本文转载自网络. 如有侵权,请联系处理!   简介 中央处理器(CPU,Central Processing Unit)是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Con ...

  3. Python-local variable 'raw_password' referenced before assignment

    where? 执行Python程序的时候,报这个错 why? 变量作用域问题,在分支中定义的变量,当满足条件的时候则可以正确得到变量,当不满足条件的时候则报这个错 way? 把变量从分支中抽离到分支上 ...

  4. 关于 K210 MaixPy 的 I2C 读取设备,搜索不到设备,通信失败的一些原因以及解决方案。

    近来对 amigo 开发期间的遇到 I2C 问题做一下总结. 我们发现有一些 I2C 设备搜索不到,主要原因是 DATA 的信号衰减,也可能是 I2C 的总线被拉住了. 软件层面的问题 例如在实现 A ...

  5. Vue.js 学习笔记之三:与服务器的数据交互

    显而易见的,之前的02_toDoList存在着一个很致命的缺陷.那就是它的数据只存在于浏览器端,一但用户关闭或重新载入页面,他之前加入到程序中的数据就会全部丢失,一切又恢复到程序的初始状态.要想解决这 ...

  6. Java知识系统回顾整理01基础04操作符03逻辑运算符

    一.长路与 和 短路与 无论长路与还是短路与 两边的运算单元都是布尔值 都为真时,才为真 任意为假,就为假 区别 长路与 两侧,都会被运算 短路与 只要第一个是false,第二个就不进行运算了 pub ...

  7. kail使用sunJDK

    今天在安装软件的时候报错,提示应使用oracle的JDK,所以鼓捣了一会发现个简单的方法 1.下载安装包解压文件到opttar -xzvf jdk-8u91-linux-x64.tar.gz 2.设置 ...

  8. BSGS算法解析

    前置芝士: 1.快速幂(用于求一个数的幂次方) 2.STL里的map(快速查找) 详解 BSGS 算法适用于解决高次同余方程 \(a^x\equiv b (mod p)\) 由费马小定理可得 x &l ...

  9. Linux 安装Navicat Premium 15

    参考:https://gitee.com/andisolo/navicat-keygen 安装 aptitude 管理软件 $ sudo apt-get install aptitude 安装Navi ...

  10. Appium自动化测试之环境安装

    安装前准备: Python 安装包下载       选择想要想在的python包Node-v6.11.2下载安卓SDK下载appium_forwindows下载 以上四个文件下载下来后,分别解压安装, ...