https-domain.md 6.1 KB
Newer Older
沉默王二's avatar
沉默王二 已提交
1 2 3 4 5 6 7 8 9
---
category:
  - 知识库搭建
tag:
  - 知识库搭建
title: 给域名配置HTTPS证书
shortTitle: 给域名配置HTTPS证书
---

沉默王二's avatar
沉默王二 已提交
10
上一次,我们完成[域名解析](https://javabetter.cn/szjy/buy-domain.html)后,发现浏览器地址栏里的域名被提示为不安全,就是因为它还是个宝宝,没有从 HTTP 升级为 HTTPS。
沉默王二's avatar
沉默王二 已提交
11

沉默王二's avatar
沉默王二 已提交
12
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-01.png)
沉默王二's avatar
沉默王二 已提交
13 14 15 16 17

那怎么升级为 HTTPS 证书呢?可以直接通过阿里云购买 SSL 证书,但特么巨贵!

本来想尝试一下 AWS 的免费 SSL 证书,但卡到验证码这一步就是收不到信息。

沉默王二's avatar
沉默王二 已提交
18
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-02.png)
沉默王二's avatar
沉默王二 已提交
19 20 21 22 23 24 25 26 27

索性就还用 FreeSSL 吧。

FreeSSL.cn 是一个提供免费HTTPS证书申请的网站,网址如下:

>[https://freessl.cn](https://freessl.cn)

输入域名 tobebetterjavaer.com 选择 trustAsia 品牌证书,点击「创建」,这次我选择的是三年期自动化(刚好我的服务器申请的是三年,域名也是三年),9.9 元,还是非常良心的。

沉默王二's avatar
沉默王二 已提交
28
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-03.png)
沉默王二's avatar
沉默王二 已提交
29 30 31

微信/支付宝支付完成后会跳到证书的订单列表。

沉默王二's avatar
沉默王二 已提交
32
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-04.png)
沉默王二's avatar
沉默王二 已提交
33 34 35

选择「更多操作」里的订单详情,会跳转到 CertCloud 页的管理订单。

沉默王二's avatar
沉默王二 已提交
36
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-05.png)
沉默王二's avatar
沉默王二 已提交
37 38 39

点击「提交 CSR」后点击「提交」。

沉默王二's avatar
沉默王二 已提交
40
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-06.png)
沉默王二's avatar
沉默王二 已提交
41 42 43

接下来就到了域名验证环节,点击「获取验证信息」。

沉默王二's avatar
沉默王二 已提交
44
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-07.png)
沉默王二's avatar
沉默王二 已提交
45 46 47

切换到域名解析设置页,准备添加记录。

沉默王二's avatar
沉默王二 已提交
48
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-08.png)
沉默王二's avatar
沉默王二 已提交
49 50 51

按照 CertCloud 提供的域名验证信息,添加记录。

沉默王二's avatar
沉默王二 已提交
52
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-09.png)
沉默王二's avatar
沉默王二 已提交
53 54 55

添加完成后切换到 CertCloud,点击「域名验证」。

沉默王二's avatar
沉默王二 已提交
56
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-10.png)
沉默王二's avatar
沉默王二 已提交
57 58 59

如果不确定上一步的记录是否添加成功,可以点击「诊断」按钮进行测试,如果没有问题会提示匹配成功的信息。

沉默王二's avatar
沉默王二 已提交
60
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-11.png)
沉默王二's avatar
沉默王二 已提交
61 62 63

之后,点击「我已完成配置,检测一下」,如果没有问题,会先提示等待 CA 颁发证书,之后再次检测会提示「证书已签发,请刷新页面查看」。

沉默王二's avatar
沉默王二 已提交
64
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-12.png)
沉默王二's avatar
沉默王二 已提交
65 66 67

好的,直接刷新页面,可以看到订单状态已经变成「已签发」的状态。

沉默王二's avatar
沉默王二 已提交
68
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-13.png)
沉默王二's avatar
沉默王二 已提交
69 70 71

点击证书操作中的「下载证书」,选择适用于 Nginx 的 PEM 格式证书,点击下载。

沉默王二's avatar
沉默王二 已提交
72
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-14.png)
沉默王二's avatar
沉默王二 已提交
73

沉默王二's avatar
沉默王二 已提交
74
使用 [Tabby 终端](https://javabetter.cn/gongju/tabby.html)的「SFTP」将证书上传到网站的云服务器。
沉默王二's avatar
沉默王二 已提交
75

沉默王二's avatar
沉默王二 已提交
76
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-15.png)
沉默王二's avatar
沉默王二 已提交
77

沉默王二's avatar
沉默王二 已提交
78
打开[宝塔面板](https://javabetter.cn/szjy/install-baota-mianban.html),准备配置 Nginx 的 SSL 证书。将以下信息复制到 Nginx 的配置文件中,保存后重新加载配置。
沉默王二's avatar
沉默王二 已提交
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

```
# HTTPS server

server {
    listen       443 ssl;
    server_name  localhost;

    ssl_certificate      /home/cert/nginx/tobebetterjavaer.com_cert_chain.pem;
    ssl_certificate_key  /home/cert/nginx/tobebetterjavaer.com_key.key;

    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;

    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;

    location / {
        root   /home/www;
        index  index.html index.htm;
    }
}
```

记得在宝塔面板和云服务器后台放行 443 端口。

沉默王二's avatar
沉默王二 已提交
105
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-16.png)
沉默王二's avatar
沉默王二 已提交
106

沉默王二's avatar
沉默王二 已提交
107
在地址栏访问 [https://javabetter.cn](https://javabetter.cn) 就可以看到我们的域名已经升级为 HTTPS 了(安全锁的小图标也显示出来了)。
沉默王二's avatar
沉默王二 已提交
108

沉默王二's avatar
沉默王二 已提交
109
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-17.png)
沉默王二's avatar
沉默王二 已提交
110 111 112

这时候,如果我们访问 80 端口的 http,仍然是可以的。只不过仍然会显示一个不安全的提示。

沉默王二's avatar
沉默王二 已提交
113
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-18.png)
沉默王二's avatar
沉默王二 已提交
114 115 116 117 118 119 120 121 122 123 124 125 126 127

此时,我们需要将 HTTP 重定向到 HTTPS。

```
server {
    listen       80;
    server_name  tobebetterjavaer.com www.tobebetterjavaer.com;
    return 301 https://$server_name$request_uri;
}
```

注释掉原来的 80 端口监听,改为 return 跳转。


沉默王二's avatar
沉默王二 已提交
128
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-19.png)
沉默王二's avatar
沉默王二 已提交
129

沉默王二's avatar
沉默王二 已提交
130
再次刷新原来的 HTTP 访问链接,可以看到已经跳转到 HTTPS 了,如果你查看地址栏的话,也会看到地址变成了 [https://javabetter.cn](https://javabetter.cn。
沉默王二's avatar
沉默王二 已提交
131

沉默王二's avatar
沉默王二 已提交
132
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/szjy/tobebetterjavaer-https-20.png)
沉默王二's avatar
沉默王二 已提交
133 134 135 136 137 138 139 140 141 142


希望这个小破站能自力更生地活下去。目前已有的花费有:

- 阿里云服务器:3 年 204 元
- 域名:3 年 273 元
- SSL 证书:3 年 9.9 元

希望能给学习 Java 的小伙伴提供一点点帮助,二哥就感觉值了!

沉默王二's avatar
沉默王二 已提交
143
到此为止,《二哥的Java进阶之路》网站的硬件设施就全部完善了,她已经是个成熟的宝宝了。
沉默王二's avatar
沉默王二 已提交
144 145 146 147 148

希望百度和谷歌等搜索引擎尽快收录,后面也会去学习一些 SEO 方面的知识,提高一下网站的排名,让网站获得更多的流量,从而提升品牌的影响力。

恭喜!

沉默王二's avatar
沉默王二 已提交
149
![](https://cdn.tobebetterjavaer.com/tobebetterjavaer/images/gongzhonghao.png)