Xlog 的博主,云集各路高手,包括熟悉 Web3、区块链技术、加密钱包等技术大牛,也包括只是想分享内容的网络技术小白。
作为网络技术小白,在自定义 Xlog 博客的域名时,发现了网址跳转存在一些问题。Xlog 博客对于裸域跳转似乎没有教程。(本博文写完后,看到了这个教程,但也没有裸域跳转的设置)我自己按照 ChatGPT 的教程并请教 Diygod 大佬,最终得以解决。此处予以记录,同时希望能够帮助其他 Xlog 用户。
在设置时,为行文方便,我将以 igdux.com 域名为例来指称裸域名,以 www.igdux.com 来指称带 www 的子域名;读者朋友需要设置时,需要将 igdux.com 和 www.igdux.com 替换为你自己的域名。
本博文实际上提供了两种跳转方案,第三节实现的目标效果是:当我们输入并访问 www.igdux.com 时,便会永久跳转 igdux.com,其中谷歌探索引擎收录的也会是 igdux.com;第四节实现的目标效果是:当我们输入并访问.igdux.com 时,便会永久跳转 www.igdux.com,谷歌探索引擎收录的是 www.igdux.com。参考谷歌的做法,我使用和推荐的做法是第四节展示的跳转方案。
自定义域名的步骤如下:
1.Xlog 子域名配置和完善#
或许,刚开始注册 Xlog 时,会随便写个 Xlog 子域名;但子域名是可以修改的,建议修改一个简短好记或令人印象深刻子域名。例如,我就将我的 Xlog 子域名修改为:https://igdu.xlog.app 。修改方法:进入 Xlog 控制台,点击设置 —— 域名 —— 设置成你理想的域名,保存即可。
2. 设置自定义域名#
Xlog 免费提供了自定义域名方案。此处以我的 Xlog 博客https://igdux.com 为例。当我想要将https://igdu.xlog.app 的域名设置自定义域名https://igdux.com 时,设置方法如下:进入 Xlog 控制台,点击设置 —— 域名 —— 自定义域名,输入你的域名,如 igdux.com(不要输入https:// 或 http:// ),此时,Xlog 会让你验证域名的主权。
如图:
由于我的域名托管在大善人 Cloudflare 那里,因而,验证域名主权时,就需要到托管了 igdux.com 这个域名的 Cloudflare 账号服务中设置域名验证的值:包括一个 CNAME 值和一个 TXT 值。按照要求填好即可。
如图:
如果设置好了,稍等片刻,即可通过自定义域名(也可以通过原分配的 xlog.app 子域名)访问你的博客。
3. 设置 301 裸域跳转,目标效果是 www.igdux.com 跳转 igdux.com (可选方案)#
所谓裸域跳转,即当访问 www.igdux.com 域名时,会跳转到不带 www 的域名 igdux.com。而 301 即设置永久跳转,不是临时的,方便探索引擎识别和标记。
通常博客平台后台就有域名跳转的选项,如 Google Blogger(注意:Blogger 默认是从不带 www 的域名跳转到带 www 的域名)。而 Xlog 后台没有设置域名跳转选项。此时,就需要你到域名托管商如 Cloudflare 那里设置域名跳转。
3.1 设置 www 域名解析#
www 域名解析的设置方法有两种,只能二选一。Diygod 选择的是方法一,我测试方法二也成功了。
设置方法一:加一个带 www. 的域名的 IP 解析,A 记录值可以填写任意的标准 IP 值(不一定是 Cloudflare 的 IP),如 192.0.2.1 或 108.162.192.233。设置好之后,如图所示:
设置方法二:加一个带 www 的域名的 CNAME 解析,解析的值可以是你的 Xlog.app 的子域名。以我的为例:
3.2 设置 301 跳转规则#
方法一:通过 Page Rule 设置 301 跳转
在 Cloudflare 账户下,选择你绑定了 xlog.app 子域名的自定义域名,例如,我的自定义域名为 igdux.com。选中域名 —— 规则 —— 页面规则,设置如图:
URL:你的域名 /* (如 google.com/*)
Pick a Setting: Forward URL; Select Status Code:301
Enter Destination URL(目标网址):https:// 你的域名 /$1
其中 /* 和 /$1 都是网络技术通用语言,按图设置即可。
当你设置好 3.1 和 3.2 的步骤之后,你就可以通过你的域名访问你博客,同时,还可以实现带裸域跳转:以我的域名为例,当我访问https://www.igdux.com 时,会自动跳转到https://igdux.com 。如果设置了 3.2 域名 301 跳转规则,没有设置 3.1 设置 www 域名解析,就会出现 HTTP 502 错误。
方法二:通过 Redirect Rule 设置 301 跳转
由于 Cloudflare 即将放弃支持 Page Rule 规则,所以,提前考虑用 Redirect Rule 设置 301 跳转。
在 Cloudflare 账户下,选择你绑定了 xlog.app 子域名的自定义域名。选中域名 ——Rules——Redirect Rules——Create Rule。
创建 Redirect Rule 时,规则名称自定义为易记的名字,如 www2Rootdomain 等。
填写跳转规则如图。需要注意的是,在设置你自己的 “如果(If)” 条件句时,要将图中 Hostname equals www.igdux.com 的 www.igdux.com,修改为你自己的需要被跳转的域名。而在 “那么(Then)” 条件句填写时,类型(Type)选择动态(Dynamic),表达式(Expression)选择 concat ("https://igdux.com", http.request.uri.path),你需要将其中https://igdux.com 修改你跳转目标域名即可,跳转状态代码(Status Code)选择 301,实现永久跳转。设置完跳转规则之后,记得域名需要加入 Cloudflare CDN。这样便可以实现从被跳转域名永久地(301)跳转到目标域名。(方法二,参考源 1的内容,特此致谢)
4. 设置 301 裸域跳转,目标效果是 igdux.com 跳转 www.igdux.com (推荐方案)#
自定义域名已经设置成功#
如果你 Xlog 自定义域名是 www.igdux.com,验证的时候,根据提示来设置,除了一条域名 txt 验证之外,还会有一条关于域名 www.igdux.com 的 CNAME 解析值的验证,即你的 xlog 子域名(我的 xlog 子域名为 igdu.xlog.app)
域名验证(鉴权)通过之后,便可以通过输入https://www.igdux.com 访问博客,但此时无法通过https://igdux.com 访问博客。因而需要设定https://igdux.com 的 301 跳转到https://www.igdux.com 。
设置的步骤,上面的 第 3 节 类似,只是数据需要调整下。关键步骤记录如下:
将裸域名 igdux.com 进行域名解析#
方法有二:
方法一,将 igdux.com 进行 A 记录解析,其值是任意的 IP,如图:
方法二,将 igdux.com(换成你自己的裸域名)进行 CNAME 解析,其值是 cname.xlog.app,大家可以自行设置,可以成功;图略。
设置裸域名 igdux.com 的 301 跳转至带 www 的子域名#
如图:
至此,我们便可以通过输入裸域名 igdux.com,便可以跳转到带 www 的子域名 www.igdux.com,并且博客的主地址也是带 www 的域名 www.igdux.com。
说明:#
Google Blogger 后台虽然带域名跳转,不过,Blogger 默认是从不带 www 的域名跳转到带 www 的域名;如果 Blogger 博主想设置裸域跳转,在 Blogger 后台就不要设置从不带 www 的域名跳转带 www 域名选项。同时,参照本文的设定,实现域名的裸域 301 跳转。
致谢:#
感谢Diygod和 ChatGPT。出现问题后,在 ChatGPT 的帮助下和 Diygod 大佬的指点下,成功地解决了域名跳转问题。
————
敬请关注:#
本文同步于iGengdu 博客和Linux.do 论坛。
关于 Xlog,之前写的几篇文章,敬请关注: