Jekyll搭建的Github Pages博客中.md文章内嵌图片无法显示问题
问题原因及对应解决方法
1. baseurl配置不匹配(90%以上都是这个问题)
GitHub Pages 部署时,如果你的仓库名不是{你的用户名}.github.io格式,站点会自动部署在子路径下,比如仓库名为my-blog,最终站点地址为https://{用户名}.github.io/my-blog。
你写的绝对路径/assets/Untitled.png会指向站点根路径https://{用户名}.github.io/assets/Untitled.png,而实际图片地址是https://{用户名}.github.io/my-blog/assets/Untitled.png,自然找不到资源。
解决方法:
- 打开根目录的
_config.yml,添加/修改baseurl配置:如果是子路径部署就填仓库名(开头加斜杠,结尾不要加斜杠),如果绑定了自定义域名就设为空字符串:
# 子路径部署示例,仓库名为my-blog baseurl: "/my-blog" # 自定义域名部署示例 baseurl: ""
- 修改post1.md里的图片引用语法,使用Jekyll全局变量补全路径:
 
2. 文件名大小写不匹配
GitHub Pages 运行在Linux环境下,路径大小写严格敏感,本地/GitHub预览的Windows/macOS环境大小写不敏感,就会出现预览正常、部署后失效的情况。
解决方法:检查assets文件夹下的图片文件名、后缀的大小写,和你写的路径完全保持一致。
3. assets文件夹被排除构建
如果_config.yml的exclude配置项里包含了assets目录,Jekyll构建时不会将该目录打包到最终部署的站点文件中。
解决方法:打开_config.yml,找到exclude配置,删掉列表中的assets项。
验证方法
部署完成后打开站点页面,按F12打开浏览器开发者工具,切换到「网络」标签刷新页面,找到图片的失败请求,查看实际请求的路径和预期路径的差异,就能快速定位问题。
内容的提问来源于stack exchange,提问作者Đức Nguyễn Minh
相关产品推荐
相关产品推荐

