本文基于郝鸿涛如何零基础免费搭建个人网站 (2024 更新版) ,将个人参考教程中遇到的问题进行详细记述。下面会根据原文流程中的步骤逐条记录。
网站主题 #
如何零基础免费搭建个人网站 中的这个步骤是可以不执行的,直接进入如何零基础免费搭建个人网站 (2024 更新版) 往下操作即可。但是如果你执行了这一步骤,有 2 点需要关注:
1. 为什么要执行下面这段代码 #
mkdir hugo-ht-new # create a new folder called hugo-ht-new
cp -r hugo-ht/* hugo-ht-new # copy everything in hugo-ht to hugo-ht-new
rm -rf hugo-ht # delete the folder of hugo-ht
mv hugo-ht-new hugo-ht # change folder name
这段代码看上去好像没有意义,但其实非常重要,需要特别关注。执行完
git clone https://github.com/hongtaoh/hugo-ht
将 hugo-ht 复制到本地,这里需要注意是,虽然本地有了 hugo-ht 的的文件,但是其实并不属于你自己的博客项目,而是一个外部引用。因为是一个外部引用,所以后面无论你改动 themes/hugo-ht 下的什么内容,都无法实际生效。执行上面的代码意义就是将其从引用,变为个人项目的一部分。
2. hugo server -D 报错 #
当你执行
hugo server -D # 这里的 D 是 draft 的意思
可能会遇到报错:page not found.
这里可能的原因是在quickstart文件夹下有同时有 hugo.toml 和 config.toml 导致的。2个文件会引起系统执行时不知道应该执行哪个,只需要删除 hugo.toml 即可。
复制仓库 url #
1. git submodule add https://github.com/hongtaoh/hugo-ht themes/hugo-ht 报错 #
如果你上面执行了“网站主题”部分,则可能会报错:
fatal: 'themes/hugo-ht' already exists in the index
意思是已经有这个文件了,不能再次操作。如果想执行,那就需要先删除掉,删除 hugo-ht 文件夹。当然,删除后,再次执行 add 操作时,会提醒:
fatal: A git directory for 'themes/hugo-ht' is found locally with remote(s):
origin https://github.com/hongtaoh/hugo-ht
If you want to reuse this local git directory instead of cloning again from
https://github.com/hongtaoh/hugo-ht
use the '--force' option. If the local git directory is not the correct repo
or you are unsure what this means choose another name with the '--name' option.
执行下面的代码可以解决:
git rm --cached themes/hugo-ht
rm -rf themes/hugo-ht
这里提一句,git clone 其实不建议使用 hugo-ht 的名字,比如我,使用的是:
git submodule add https://github.com/hongtaoh/hugo-ht themes/hugo-zj
然后将 config.toml 中 theme = “hugo-ht” 改为 theme = “hugo-zj” 就好了。
2. git remote add origin YOURREPO 中 YOURREPO 写什么 #
这里因为需要和git远程代码库做操作,所以需要本机和git进行授信。你执行的时候可能会要求输入git的账户密码。为了避免之后做 git 操作时都要先授信,建议在做这一步操作时,先完成 ssh 部分,详见 如何零基础免费搭建个人网站 中设置 SSH Deploy Key 的部分。
⚠️完成设置 SSH Deploy Key后,YOURREPO应该是ssh链接,而不是 https 链接。
Vercel 导入项目 #
1. 点击 Deploy 报错 #
点击 Deploy 可能会报错
sh: line 1: hugo: command not found
Error: Command "hugo --gc" exited with 127
这是因为 vercel 使用的 hugo 版本比较老导致的,解决方法如下:
- 在 vercel 的博客项目中 setting 里,点击“Environment Variables”
- 在key 中填写 HUGO_VERSION ,在Value 里填写 hugo 版本号,店家 save 即可。
本地 hugo 版本,可以在终端里输入 hugo version 查看,v 之后的内容就是,注意不写 v。
自定义域名 #
原文使用域名是在 Namecheap 上买的,我是在porkbun 买的,因为更加便宜一点。下面是如何在porkbun上配置域名。
- 在 vercel 的 项目 setting 中,选择 Domains , 将自己购买的域名进行 add。点击添加时,会遇到红字提醒,那不是报错,是需要在 porkbun 上进行设置。
- 在 porkbun 上,点击域名下的 DNS ,进入 DNS 设置页面,按照vercel上的提醒,做相应的添加即可。
大概10s左右,就会生效。
中文为主,英文为辅 #
在修改网站设置时,可能会遇到,本地做了修改 hugo server -D 也是对的,但是网站不生效的情况。
很可能是因为上面提到的 网站主题部分中第 1 个问题引发的。建议是修改文件夹名称,然后将 config.toml 中 theme = “hugo-ht” 改为 theme = “hugo-zj” 就好了。
#博客搭建最后一次修改于 2024-04-14