Jekyll搭建网站本地与GitHub Pages显示不一致问题求助
Jekyll本地与GitHub Pages首页显示差异排查方案
核对Jekyll版本一致性
本地执行jekyll -v查看版本,然后去GitHub仓库的「Settings→Pages」页面确认官方使用的Jekyll版本。如果版本不一致,用bundler锁定版本:在Gemfile中添加gem "jekyll", "x.x.x"(替换为GitHub Pages的版本号),执行bundle install后本地重新构建,再推送代码。检查index.html的核心逻辑
- 确认文章遍历代码:首页是否用了
{% for post in site.posts %}循环?有没有额外的过滤条件(比如按分类/标签筛选)导致GitHub上的文章被排除? - 分页模块验证:如果用了分页功能,先检查
_config.yml里的配置:
然后看index.html里的分页显示代码,是不是用了paginate: 10 # 每页文章数,根据你的需求调整 paginate_path: "/page:num/" plugins: - jekyll-paginate # 官方分页插件,GitHub Pages支持paginator对象,比如:
注意:GitHub Pages只支持官方认证的插件,不要用第三方分页插件。Page {{ paginator.page }} out of {{ paginator.total_pages }}
- 确认文章遍历代码:首页是否用了
排查文章文件与Front Matter
- 确认所有文章都放在
_posts目录下,命名严格遵循YYYY-MM-DD-文章标题.md格式,不要有特殊字符。 - 检查每篇文章的Front Matter,是否设置了
published: true(默认是true,但如果手动设为false会被GitHub Pages忽略),且layout字段正确对应主题的布局文件。
- 确认所有文章都放在
查看GitHub Pages构建日志
进入仓库的「Actions」页面,找到最近的Pages构建任务,查看完整日志。如果有语法错误、插件不支持等问题,日志里会明确提示,比如某段Liquid代码解析失败,或者使用了未授权的插件。强制触发重新构建
有时候GitHub Pages会缓存旧的构建结果,去仓库的「Settings→Pages」页面,无需修改任何设置,直接点击「Save」按钮,触发一次全新的构建。
内容的提问来源于stack exchange,提问作者Choochoojc
相关产品推荐
相关产品推荐

