整体框架

hexo+github+netlify+cloudflare
博客生成框架
它的作用是将用户的输入转化成一个网站目录
- 由一些html文件、css文件以及js文件组成的目录结构(前端三件套)
文件托管平台
能够让我们把文件存储在云端,并提供相应的访问和修改的接口站点部署服务
将一个已经成形的网站部署到互联网上,让网络上的其他主机能够正常访问(最简单的事github,上的github pages,但是这个方式国内的访问速度极慢,此教程中我们使用netlify作为我们部署站点的服务提供商,而把github仅仅作为一个托管文件的场所)
- netlify除了直接部署静态网络的功能之外,还支持动态的构建网站,也就是我们可以自定义一个构建网站的脚本,比如我们后面会使用的 npm run clean &&npm run build这个脚本,它会先清除之前已经构建好的静态网站,然后重新从头构建,以防某些地方的更新不到位
CDN加速服务
遇到的错误
Error: Spawn failed
FATAL Something’s wrong. Maybe you can find the solution here: https://hexo.io/docs/troubleshooting.html

解决:临时禁用SSL验证(不推荐用于生产环境):
1 | git config --global http.sslVerify false |
运行git config –global http.sslVerify false后再运行hexo d后还是出现相同的报错,如何解决:
如果禁用 SSL 验证后仍然遇到相同的错误,问题可能更复杂。让我们尝试一些更深入的解决方案:
检查 Git 版本:
运行git --version确保您使用的是最新版本的 Git。如果不是,请更新 Git。检查远程仓库 URL:
运行git remote -v检查远程仓库的 URL 是否正确。如果使用 HTTPS,尝试切换到 SSH,反之亦然。清除 Git 凭证:
1
2
3git config --system --unset credential.helper
git config --global --unset credential.helper
git config --local --unset credential.helper检查代理设置:
如果您使用代理,确保 Git 的代理设置正确:1
2git config --global --unset http.proxy
git config --global --unset https.proxy增加 Git 操作的超时时间:(运行后再运行hexo d解决问题)
1
2git config --global http.lowSpeedLimit 0
git config --global http.lowSpeedTime 999999尝试使用 GitHub CLI:
如果您有 GitHub CLI(gh),可以尝试使用它进行身份验证:1
gh auth login
手动推送:
尝试手动推送到 GitHub 仓库,看看是否能成功:1
2cd .deploy_git
git push -u origin master检查 Hexo 配置:
确保您的 Hexo_config.yml文件中的部署设置正确:1
2
3
4deploy:
type: git
repo: <您的 GitHub 仓库 URL>
branch: master重新安装 hexo-deployer-git:
1
2npm uninstall hexo-deployer-git
npm install hexo-deployer-git使用 verbose 模式运行 Hexo:
1
hexo deploy --debug
这会提供更详细的错误信息,可能有助于诊断问题。
检查系统时间:
确保您的系统时间是正确的,时间不正确可能导致 SSL 错误。临时禁用防火墙和杀毒软件:
有时防火墙或杀毒软件可能会干扰 Git 操作。
如果以上方法都不能解决问题,您可以尝试以下替代方案:
使用其他部署方法:
例如,使用 rsync 或 FTP 部署,而不是 Git。手动部署:
生成静态文件后,手动将它们上传到您的 GitHub Pages 仓库。使用 GitHub Actions:
设置 GitHub Actions 工作流来自动部署您的 Hexo 博客,这样可以绕过本地部署问题。
如果问题仍然存在,建议您在 Hexo 的 GitHub 仓库上开一个 issue,提供详细的错误日志和您的环境信息(操作系统、Node.js 版本、Hexo 版本等),以获得更专业的帮助。