抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

本文偏向于记录备份,仅供参考。

Hexo 框架可直接参考使用。

前言

本站基于 Hexo 框架搭建,无服务器实现部署,使用了 GitHub / Vercel / Cloudflare 等网站服务。

1.域名

本站目前部署的唯一支出就是域名,因大部分部署服务提供的子域名都被大陆运营商污染,故而需要绑定自己的域名以正常访问。

域名购买完成后,我们需要 DNS 服务以解析域名,推荐使用 DNSPod / AliDNS 等服务,但本站使用 Cloudflare DNS 以替代前述。

因大部分服务都需实名/备案/付费等繁琐的准备,故而本文会尽量绕过前述这些条件的服务以部署。

等待域名解析完成后,我们就可以在 Cloudflare 对后续的网站项目进行分配域名。

2.存储

本站的源码尽数存储于 GitHub,通过将 Hexo 静态文件推送至 GitHub 仓库,以实现代码文件存储。

# 打开终端,输入:
hexo clean && hexo g && hexo d

3.网站上线

为了将网站发布至线上,我们还需要部署服务来配合,推荐使用 Vercel / Cloudflare / Netlify 等平台,本站选择 Vercel 来完成部署。

如若不要求速度与绑定域名,可以直接使用 GitHub 提供的 GitHub Pages 完成部署,至此,以下步骤可完全省略。具体操作方法:将静态代码仓库更名为 *.github.io(此处的 * 即为 GitHub 用户名)以开启服务。

将 Vercel 连接 GitHub 账号,并点击 Add New 新建项目,将代码仓库(上述推送的静态文件仓库)导入 Vercel,再点击 Import 绑定项目,最后点击 Deploy 部署项目即可。

因部署的项目为纯静态,故而我们不需要更改 Vercel 部署的任何设置,按照提示完成操作即可。

由于 Vercel 分配的子域名 *.vercel.app 被大陆 DNS 污染,所以需要绑定自己的域名以实现正常访问。

为防止域名被 GFW,我们可以按照 Vercel 域名绑定提示完成后,等待 SSL 证书签发完成,再将 DNS 记录更改为以下:

DNS 记录
@ 76.223.126.88
CNAME cname-china.vercel.com

需要先将域名解析至 Vercel 提供的默认 DNS 服务器,以防止 SSL 证书签发失败的问题。

4.配置

以下的配置基于 Clodflare 提供的服务。

4.1 CDN 加速

打开 DNS - 记录 页面,开启 橙云 即可(默认状态应为打开)。

因 Cloudflare 在大陆并无节点,所以加速效果也许不会太好(甚至还可能会变成减速器),开启后若感觉速度明显降低,严重影响访客访问体验,则可暂时进行关闭,继续使用 Vercel 提供的默认 DNS 服务器。

4.2 DDoS 防御

打开 安全性 - DDoS 页面,点击 部署DDoS替代

参考配置如下:
替代名称:ddos
规则集操作:阻止
规则集敏感度:高

4.3 速度限制

打开 安全性 - WAF - 速度限制规则 页面,点击 创建规则

参考配置如下:
规则名称:速度限制

字段:URI 路径,运算符:包含,值:/
表达式:(http.request.uri.path contains "/")

当速率超过...
请求:35,期间:10 秒钟

然后采取措施...
选择操作:阻止,响应类型为:默认 Cloudflare 速度限制响应

持续时间达...
持续时间:10 秒钟

5.错误

当访问网站时提示重定向次数过多,解决方法如下:

打开 SSL/TLS - 概述 页面,将加密模式设置为 完全 即可。若设置完成后,依然提示,则可暂时将 DNS 的 橙云 关闭。

结尾

至此,你的网站已经上线,完结撒花🎉!