为什么我在 Hugo 中的单个页面 returns 出现 404 HTTP 错误?
Why my single page in Hugo returns a 404 HTTP error?
我正在尝试使用 Hugo 创建网站,但我不知道如何将单个页面添加到我的网站(帖子工作正常)。
从全新安装开始(v.0.27 64x for windows)和 运行 以下来自我的终端的命令:
> hugo new site soexample
> cd soexample
> git clone https://github.com/parsiya/Hugo-Octopress.git themes\octopress
> hugo new about.md
> echo "Please display me" >> content\about.md
> hugo serve -D -t octopress
我可以看到我的草稿页面是从最后一条命令的输出中呈现的:
...
Built site for language en:
1 of 1 draft rendered
...
但是当我尝试访问 http://localhost:1313/about/
或 http://localhost:1313/about.html
时,服务器(不是浏览器)returns 一个白页:
404 page not found
我错过了什么?
问题似乎出在未呈现的选定默认主题上 single page outside of posts section。主题对于初学者来说可能是一个棘手的问题,因为 hugo 没有默认的主题,也不推荐或支持官方主题(因此初学者可能不得不随机选择)。
所以以下命令对我有用:
> hugo new site soexample
> cd soexample
> git clone https://github.com/spf13/hyde.git themes\hyde
> hugo new about.md
> echo "Please display me" >> content\about.md
> hugo serve -D -t hyde
页面 http://localhost:1313/about/
已正确呈现。
为了在 Hugo 中呈现独立页面,您需要将类型设置为页面,并确保您的布局中有一个 'single' 模板。
在about.md
前题集type = "page"
。在 _default
文件夹下的布局文件夹中,确保您有一个 single.html
文件。
就是这样,/about
页面现在应该可以正确呈现了。
可能重复,
这个问题我已经回答了,这里也复制粘贴。
我有类似的要求,添加静态页面(在本例中为 aboutus
)。以下步骤成功了,
- 创建了一个空文件
content/aboutus/_index.md
- 已创建 aboutus.html 页面
layouts/section/aboutus.html
我认为问题可能与草稿有关。
新建内容默认有draft: false
,hugo默认会排除草稿文件
您可以将其更改为 draft: true
或使用 --buildDrafts
选项。
刚刚在这里偶然发现,它是草稿,但在我的情况下,解决方案有一个有趣的问题:
about/_index.md (draft)
about/other.md (not a draft)
Hugo 在不构建草稿时忽略 other.md,无论 other.md 的草稿状态如何。我会把它留给 reader 来决定这是错误还是功能。
我正在尝试使用 Hugo 创建网站,但我不知道如何将单个页面添加到我的网站(帖子工作正常)。
从全新安装开始(v.0.27 64x for windows)和 运行 以下来自我的终端的命令:
> hugo new site soexample
> cd soexample
> git clone https://github.com/parsiya/Hugo-Octopress.git themes\octopress
> hugo new about.md
> echo "Please display me" >> content\about.md
> hugo serve -D -t octopress
我可以看到我的草稿页面是从最后一条命令的输出中呈现的:
...
Built site for language en:
1 of 1 draft rendered
...
但是当我尝试访问 http://localhost:1313/about/
或 http://localhost:1313/about.html
时,服务器(不是浏览器)returns 一个白页:
404 page not found
我错过了什么?
问题似乎出在未呈现的选定默认主题上 single page outside of posts section。主题对于初学者来说可能是一个棘手的问题,因为 hugo 没有默认的主题,也不推荐或支持官方主题(因此初学者可能不得不随机选择)。
所以以下命令对我有用:
> hugo new site soexample
> cd soexample
> git clone https://github.com/spf13/hyde.git themes\hyde
> hugo new about.md
> echo "Please display me" >> content\about.md
> hugo serve -D -t hyde
页面 http://localhost:1313/about/
已正确呈现。
为了在 Hugo 中呈现独立页面,您需要将类型设置为页面,并确保您的布局中有一个 'single' 模板。
在about.md
前题集type = "page"
。在 _default
文件夹下的布局文件夹中,确保您有一个 single.html
文件。
就是这样,/about
页面现在应该可以正确呈现了。
可能重复,
这个问题我已经回答了,这里也复制粘贴。
我有类似的要求,添加静态页面(在本例中为 aboutus
)。以下步骤成功了,
- 创建了一个空文件
content/aboutus/_index.md
- 已创建 aboutus.html 页面
layouts/section/aboutus.html
我认为问题可能与草稿有关。
新建内容默认有draft: false
,hugo默认会排除草稿文件
您可以将其更改为 draft: true
或使用 --buildDrafts
选项。
刚刚在这里偶然发现,它是草稿,但在我的情况下,解决方案有一个有趣的问题:
about/_index.md (draft)
about/other.md (not a draft)
Hugo 在不构建草稿时忽略 other.md,无论 other.md 的草稿状态如何。我会把它留给 reader 来决定这是错误还是功能。