设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现

设置 https + 域名访问网站的最简单方法 - 不需要 SSL 证书,通过 Cloudflare 实现

现在的网站,https 加密传输已经是标准配置了,不支持 https 的网站基本已经不存在了,也没法存活了。但是新手自己配置 https + 域名还是不太容易,这篇文章教大家一个最简单的方法配置 https + 域名

域名的购买和在 Cloudflare 上托管就不在这里说明了,网上有很多很好的教程,这里主要讲一下不申请 SSL 证书,用 Cloudflare 实现 https + 域名访问自己的搭建的网站。

最简单的网站( IP : 80 端口)(端口不是 80 的网站看下面)

如果搭建的网站或是网页地址是 http://142.250.115.113:80,IP 是不支持 https 的,所以只能是 http ,默认端口是 80,所以 80 也可以不加,直接用 http://142.250.115.113

如果想用域名 https://ghost.techio.top 来访问这个网站,https 的默认端口是 443,端口号也可以不加

Cloudflare 设置

  1. 如果某个域名和所有的子域名都用这个设置,可以在全局里设置

a. 进入托管的域名,点击左侧的 [SSL/TLS],然后点击 [Configure]

b. 把 [SSL/TLS] 设置成 [Flexible]

c. 点击左侧的 [DNS] -> [Records] -> [Add record],[Type] 选 [A],添加域名指向网站服务器 IP ,完成后 [Save]

d. 完成,就这么简单。然后在浏览器里输入 https://ghost.techio.top 可以看到网站了。

  1. 如果第一种方法的 b 步骤不想把全局都设为 [Flexible](比如说需要在这里设为 [Full] ),那么要多一步设置,把你所要用的域名单独设为 [Flexble]

a. 点击左侧的 [Rules] -> [Configuration Rules] -> [Create rule],然后 [Custom filter expression] 里,设置 [Hostname] [equals] [ghost.techio.top]

b. 然后在最后的 [SSL] 里,把 [encryption mode] 选成 [Flexible],这样的作用是当请求的域名是 ghost.techio.top 时,就把加密模式转成 [Flexible]

c. 完成,只是记得每个要这样用的子域名都要单独添加这个设置

端口不是 80 的网站( 例如:IP : 1234 端口)

a. 先按照上面的方法设置好,域名指向 IP 地址,[encryption mode] 设成 [Flexible]。如果这时候想访问网站,就要用 https://ghost.techio.top:1234 加上端口号来访问

b. 如果不想每次访问时都加上端口号,就要设置端口转发到 1234 。点击左侧的 [Rules] -> [Origin Rules] -> [Create rule],然后同样在 [Custom filter expression] 里,设置 [Hostname] [equals] [ghost.techio.top]

c. 到页面下面,在 [Rewrite to...] 的端口处输入 [1234] ,然后 [Save]

d. 完成。现在就可以用 https://ghost.techio.top 来访问网站了,不需要再加上端口号了。

总结:

这就是最简单的方法设置用 https + 域名来访问网站。这种方式虽然简单,但是也有一个缺点。这种 [Flexible] 的加密传输只有在客户端浏览器和 cloudflare 之间是加密传输的,在 cloudflare 和本身的网站间还是用的无加密的传输。

如果是只对于一些无敏感数据的网站是没问题的,但是如果网站里有密码,个人信息等一些敏感信息的话,还是建议用 [Full] 模式的加密传输。后面有时间也会出申请和配置 SSL 证书的教程。