前言

在之前的内容里,我们已经实现了部署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. 论文阅读笔记: Natural Language Inference over Interaction Space

    这篇文章提出了DIIN(DENSELY INTERACTIVE INFERENCE NETWORK)模型. 是解决NLI(NATURAL LANGUAGE INFERENCE)问题的很好的一种方法. ...

  2. 我要吹爆这份阿里中间件技术内部的RM笔记,简直佩服到五体投地

    消息队列 RocketMQ 版是阿里云基于 Apache RocketMQ 构建的低延迟.高并发.高可用.高可靠的分布式消息中间件.该产品最初由阿里巴巴自研并捐赠给 Apache 基金会,服务于阿里集 ...

  3. 初探JVM

    JVM探究 请你谈谈你对JVM的理解?java8虚拟机和之前的变化更新? 什么是OOM,什么是栈溢出StackOverFlowError?怎么分析? JVM的常用调优参数? 内存快照如何抓取,怎么分析 ...

  4. 和低效 IO 说再见,回头补一波 Java 7 的 NIO.2 特性

    其实在这之前已经写过一篇关于 Java 7 的新特性文章了,那篇文章主要介绍了 Java 7 的资源自动关闭.Switch String 实现原理.异常捕获 try-catch.新的二进制书写方式等, ...

  5. Layman 分享到朋友圈或发送给朋友

    *主要是介绍如何在网页中实现发送给朋友和分享到朋友圈时内容参数自定义的功能 微信JS接口 1.微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包; 通过使用微信JS-SDK, ...

  6. osu合集(期望dp)

    T1 EASY 我们设\(f_i\)表示到\(i\)的连续个数平方的期望. \(g_i\)表示到到\(i\)的连续个数的期望 在维护\(f_i\)的同时维护一下\(g_i\)就行了. 转移方程: \( ...

  7. Java 生态碎片化 和 .NET生态的一致性

    .NET Core是以MIT协议开源, Java是GPL协议开源.Java 8 SDK升级Oracle要收费这件事对于很多小公司是有着重大的影响的,Java生态越发碎片化,有众多的OpenJDK发行版 ...

  8. 轻轻松松学CSS:Flex布局

     Flex布局就是"弹性布局",它可以简便.完整.响应式地实现各种页面布局.引入弹性布局的目的,当页面需要适应不同的屏幕大小确保元素拥有恰当的布局方式,对一个容器中的子元素进行排列 ...

  9. List移除另外一个list的时候报错,java.lang.UnsupportedOperationException

    问题 编写代码的时候,使用Mybatis-plus分页查询返回的list,移除自己new的ArrayList报错 根据异常信息,发现mybatis-plus分页查询返回的list底层并没有实现remo ...

  10. 每日一题 LeetCode 42.接雨水 【双指针】

    题目链接 https://leetcode-cn.com/problems/trapping-rain-water/ 题目说明 题解 主要方法:双指针 + 正反遍历 解释说明: 正向遍历:先确定池子左 ...