WuMingZhao/Bug

Created Sun, 24 Dec 2023 17:22:42 +0800 Modified Sun, 28 Jan 2024 14:35:44 +0000
954 Words

Bug (各种问题与解决方案)

在搭建个人网站的时候使用了如下技术:

  1. Git (版本控制)

  2. Github (代码托管)

  3. Hugo (个人网站框架)

  4. Vercel (个人网站托管)

同时也遇到了一系列的问题,这里统一记录一下这些坑方便以后快速检索。

Problems

  1. 在本机运行hugo server生成的网页一切正常,但是vercel部署的网页会出现资源(图片,代码)无法加载的问题,进而无法正常显示网页。

    可能的解决方案:将themes文件夹直接提交到GitHub而不是仅仅提交一个链接。

    最终解决:设置hugo.toml的baseURL为vercel分配的域名。

    问题原因:baseURL未正确设置导致public里的资源路径无法加载,从而导致资源丢失,网页无法正常显示。

  2. hugo.toml里的favicon与avatar只能使用相对路径不能直接引用互联网上的图片。

    问题:怎样优雅地将avatar与favicon改为自己设置的图片?

    解决方案:在hugo.toml同级目录下创建static/images文件夹,里面可以存放需要的图片。注意:使用的时候,图片的路径需要写成/images/图片名。

  3. 使用git submodule add下载仓库后,应该将仓库中的.git文件删除来忽视新下载仓库的内容变化。

Tips

  1. 修改主题avatar时添加新图片时请避免命名冲突,因为static/images不会直接覆盖主题文件夹里的static/images,相反后者的优先级更高。所以:我们应该命名新图片一个全新的名字。

Git

在中国🇨🇳使用Github会面临中国特色互联网墙的问题,无法正常使用Clone、Push、Pull、Submodule等功能。

这时我们可以购买一个VPN然后修改git配置来解决这些问题。

开启git代理执行以下命令:

# 设置http代理为本机7890端口
git config --global http.proxy 127.0.0.1:7890
# 设置https代理为本机7890端口
git config --global https.proxy 127.0.0.1:7890

取消git代理执行以下命令:

# 取消http代理
git config --global --unset http.proxy
# 取消https代理
git config --global --unset https.proxy

macOS

对于Mac用户在中国🇨🇳使用homebrew等包管理器同样会面临中国特色互联网墙的问题,无法以正常速度下载或更新包,甚至经常在下载过程中与包管理器断开连接。

这时我们可以购买一个VPN然后设置环境变量来解决这些问题。

# 设置ALL_PROXY环境变量
export ALL_PROXY=127.0.0.1:7890

注意:export设置的环境变量只在当前终端会话临时存在。