我尝试使用 Hexo 在 GitHub Pages 上部署我的博客,但遇到 404 错误。我尝试了很多解决方案,但都没有效果。详情如下:
Node.js 版本:9.7.2 Hexo版本:6.3.0 我可以在本地主机上生成页面(hexo 服务器命令按预期工作)。 我已正确命名我的存储库并在 _config.yml 中设置部署配置,如下所示:
# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
type: git
repo: https://github.com/shioubi0216/shioubi0216.github.io.git
branch: main
我已确保本地存储库与远程存储库同步。 我尝试重置存储库(删除并重新创建 GitHub Pages 存储库),但没有帮助。 我已经使用安装了 hexo-deployer-git 包
npm install hexo-deployer-git --save
多次。
我曾经遇到过 Jekyll 构建失败的情况,我设置了 skip_render: true
,但网站仍然无法工作。
我已经检查了 GitHub Pages 故障排除指南中的 404 错误,状态看起来不错。
我不相信我正在使用 DNS,但这里是 _config.yml 中的 URL 配置:
# URL
## Set your site url here. For example, if you use GitHub Page, set url as 'https://username.github.io/project'
url: https://shioubi0216.github.io/
permalink: :year/:month/:day/:title/
permalink_defaults:
pretty_urls:
trailing_index: true # Set to false to remove trailing 'index.html' from permalinks
trailing_html: true # Set to false to remove trailing '.html' from permalinks
我已清除浏览器缓存并多次重新启动电脑。 我注意到我没有
index.html
文件。我之前的 Hexo 目录中有一个,但即使有了它,我也无法部署该网站。我不确定这是否与问题有关。
我已经验证 GitHub 上的存储库位于主分支上。
尽管进行了多次尝试,我仍无法解决这个问题。我正在向 Stack Overflow 社区寻求帮助。我已经筋疲力尽,如果我不能很快找到解决方案,我会考虑重置我的电脑。任何帮助将不胜感激。
我将
repo:
的_config.yml
部分设置为原始github https链接到SSH链接,它起作用了!
我不知道为什么它有效。但我成功了哈哈哈。
郑树的回答很棒。这对我有用。我添加了 _config.yaml 配置的部署部分,以防有人想了解详细信息。
deploy:
type: git
repo:
github:
url: '[email protected]:yaohuiwu/yaohuiwu.github.io.git'
branch: master
GitHub 有两种连接方式。
_config.yaml
中使用的链接与您在自己的PC上配置的相同!例如,如果您将 Git 配置为 SSH,则必须使用 Github 存储库的 SSH 链接才能使其工作,但不能使用 HTTP/HTTPS。
还有一个不错的选择是通过 Github Actions 部署您的网站。您将不再需要保存和传输 Hexo 网站的源文件。
此外,Github Actions 最显着的优势是,一旦您将提交推送到 Github,部署就会自动完成。