问题描述
部署到Vercel全都是XML文件
Vercel是著名PAAS服务,相比于 Github Pages,其中国大陆可直接访问,因此尝试把Hugo站点发布到vercel中,部署后遇到问题,所有页面都为xml文件,如下所示:
Vercel没有找到匹配的模板文件
尝试查找原因,发现日志中输出了大量的警告错误,如下所示。其说明没有匹配到样式文件。
WARN 2024/07/29 12:37:35 found no layout file for "HTML" for "page": You should create a template file which matches Hugo Layouts Lookup Rules for this combination.
问题解决
解决Hugo版本问题
经过查阅一只小庖丁给出的《hugo部署vercel踩坑记录》 和 goodspeed 的博文《Avoid These Mistakes: Best Practices for Deploying Hugo on Vercel》,在 Vercel 中设置环境变量 HUGO_VERSION
为 0.122.0 可以解决该问题。
Vercel 文档中有写修改 HUGO_VERSION
的要求,修改 HUGO_VERSION
需要看有没有对应的 Github Release,比如 0.92.2
存在,但 0.92
不存在。参考上述博客,修改 0.122.0
版本的 HUGO 后重新部署,步骤停留在安装 HUGO 近三十分钟。
Installing Hugo version 0.122.0
修改 0.114.0
版本的 HUGO 后不需要安装 Hugo,但是 index.rss.xml
文件报错,如下所示:
Error: error building site: render: failed to render pages: render of "home" failed: "/vercel/path0/themes/JingheInvolvedTheme/layouts/index.rss.xml:68:33": execute of template failed: template: index.rss.xml:68:33: executing "index.rss.xml" at <transform>: can't evaluate field XMLEscape in type interface {}
本地使用的是 0.125.3
版本的HUGO,可以成功部署,说明 0.114.0
版本的 HUGO 不支持该 RSS 文件的配置。尝试修改为 0.125.3
版本的 HUGO 后 Vercel 平台部署成功,且不存在 HUGO 的下载问题。
Vercel部署站点测速
部署完成后访问却无法解析,很疑惑,想看一下全国各地的网站访问速度,结果只有河北省无法解析,好巧我目前就在河北省。