title: hexo博客域名配置
author: 红豆刨冰
接hexo搭建博客一文
1.域名配置
当需要将域名指向另一个域名,再由另一个域名提供 IP 地址,就需要添加 CNAME 记录
主机记录就是域名前缀,常见用法有:
**www:**解析后的域名为www.hdbb.xyz
**@:**直接解析主域名 hdbb.xyz
2.github pages配置
3.hexo配置
在完成前两步后,已经能通过个人域名访问托管在github的博客了
但存在一个问题,就是每次hexo d重新部署后,配置的 GitHub Pages 自定义域名消失
背景知识
.nojekyll
文件
-
作用:
.nojekyll
文件用于告诉 GitHub Pages 不要使用 Jekyll 来生成静态网站。如果项目中有以_
开头的文件或文件夹(例如_config.yml
),默认情况下,Jekyll 会忽略这些文件。创建一个.nojekyll
文件可以避免这种情况,使 GitHub Pages 直接使用用户提供的静态文件,而不进行额外的处理。
-
使用场景:
- 如果站点不是基于 Jekyll 构建的,例如使用 Hexo、Hugo 或其他静态网站生成器,则需要在项目根目录下添加
.nojekyll
文件,以确保所有文件都能正确部署和访问。
- 如果站点不是基于 Jekyll 构建的,例如使用 Hexo、Hugo 或其他静态网站生成器,则需要在项目根目录下添加
CNAME
文件
-
作用:
CNAME
文件用于配置自定义域名。该文件的内容应该是你的自定义域名,例如www.hdbb.xyz
。当 GitHub Pages 看到CNAME
文件时,它会将该域名绑定到 GitHub Pages 站点,使用户可以通过自定义域名访问站点。
-
使用场景:
- 当希望使用自己的域名而不是 GitHub 提供的
username.github.io
域名来访问站点时,需要在项目根目录下创建一个CNAME
文件,并在该文件中写入自定义域名。
- 当希望使用自己的域名而不是 GitHub 提供的
解决方法
创建deploy.sh和CNAME文件
#!/bin/bash
hexo clean
hexo generate
cp CNAME public/
cp .nojekyll public/
hexo deploy
然后每次部署时,使用 ./deploy.sh 来替代 hexo d