type
status
category
date
slug
summary
tags
icon
Last edited time
Jul 31, 2023 11:40 AM
前言
为了notion的自定义域名查了很多文章,方法就那一套,用的cloudflare,但是很多文章写的内容不够详细,特别是 change your nameservers 的细节很多没有讲到过,遂记录下自己配置的过程
2021/11/2 注:10月份发生过notion更换个人分享页面域名事件,所以下文四、配置Web Worker板块代码可以直接去六、附录代码查看并使用
配置过程是没问题的,但是代码可以不用去页面生成,直接用我自己可运行的代码,修改两个地方就行
零、share你的Notion页面
找到你需要分享的页面。点击右上角的Share

勾选 Share to web
然后下面的链接就是我们在网上访问公开页面的地址
一、注册域名
简而言之
- 输入想要的域名,点击搜索

- 挑选想要的域名后缀
我的jimmyhjh.com刚刚被我注册了,选择一个想要的,加入购物车,然后付款,就可以了
不同的后缀区别不大,.com还是.cn,还是.我爱你都没啥区别,价格不同,然后.cn是国内顶级域名,.com国际顶级域名
一般注册.com的比较多,价格也算适中,5 60一年


二、在域名解析中添加一条记录
注册好域名后,进入后台控制面板,即可对域名进行控制

这里我们需要点击解析,跳转到DNSPOD页面

点击添加记录,输入一下内容

主机记录写@(或者你需要的前缀,一般写@)
记录值这里,我也不清楚填啥,看着这个视频,然后试了试,直接命令行ping 百度
然后显示的值填进去就行了,例如220.181.38.148

三、将域名转移到Cloudflare使用DNS服务
- 进入网站 https://dash.cloudflare.com
- 用邮箱注册一个账号,然后登录
cloudflare支持中文,可以选择中文进行使用
- 登录过后点击Add site 进行添加站点

- 文本框输入我们注册好的域名后,点击Add site

出现这个页面

- 点击 Add record
- 输入@,那么就是域名本身,例如 jimmyhjh.com
- 输入其他,例如 jh,那么得到的网址就是 jh.jimmyhjh.com
- 我这个新注册的,直接输入@,得到jimmyhjh.com

添加记录的填法是
Type选择CNAME
Name就是在你的域名前加的二级域名
IPv4 address 固定,输入notion.so

点击 Save 保存后,Continue 继续
- 出现这个页面,我看过很多教程里都没有教怎么Change nameservers,所以我这里按它所说一步一步完成试试
- 这步就是找到你注册域名的地方,例如说我是在腾讯云注册的域名,那么我们直接登录到腾讯的域名控制面板中
- 点击管理

Determine your registrar via WHOIS.
Log in to the administrator account for your domain registrar


点击修改,将这两个改成Cloudflare要求的DNS
修改后显示

稍等一会儿后就修改成功了
返回Cloudflare显示如下界面

此处可点击 Finish later
*注,这步其实可以直接Get started,稍后做也行,我第6步其实就是在做这个,不过这个不是关键步骤
随后返回显示如下界面

- 在Quick Start Guide里点击review setting
- Improve security on
- always use HTTPS on
- Optimize performance HTML
- Brotli on
- DNS修改需要等几分钟,几分钟后Cloudflare会发一份邮件给你,通知你已经成功接到他们那了
或者你回Cloudflare的dashboard刷新一下,显示这个就说明你可以进行下一步操作啦

四、配置 Web Worker
在上方蓝色图标中选择Workers

点击 Manage Workers
点击 Create a worker
出现如下界面

然后可以在
这篇文章的 第二部:自定义生成脚本处生成需要的脚本代码
*相比较网上其他文章,这篇文章解决了我搭建过程中几个关键的步骤点,如我的文章无法帮助到你,或者你遇到了其他问题,可以参考此文章

得到代码,返回Cloudflare,粘贴在原本的Script框中

点击下方 Save and Deploy
*此处有个注意点,我给页面的标题起的是 Jimmy's Writer Life,直接点保存会报错,学过编程的同学应该知道是为啥,这里我们只要把这段代码使用的'改成"就行了

又报错,显示

只能在Chrome运行?。。那我再用Chrome打开试试,保存后无报错
返回这个页面,点击 Add route

将路由 Route 设置为你的自定义域名后面加上通配符 /*,表示我们访问这一域名的全部下级内容,均指向这一 Web Worker
再将 Worker 设置为我们刚刚部署的那个

如果不出问题的话,此时输入我的域名 jimmyhjh.com 就可以显示我的notion页面了!

芜湖!
五、Mismatch between origin and baseUrl (dev).问题

出现此问题请查看此文章解决
六、附录代码
蛮多网友问,我就直接把我现在的完整代码贴在这
应该是只要改这下面两个地方就行了
完整代码
七、参考文章
- 作者:Jimmy Huang
- 链接:https://huangjihao.com/748f86539a1b414d8cfdf1922844edee
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。