You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Franklin.jl中修改相对路径以适配GitHub Pages部署?

Franklin.jl部署GitHub Pages子路径资源加载问题解决方案

问题本质

该问题不是GitHub Pages配置错误,属于静态站点部署在域名子路径下的通用适配问题:你的站点实际部署在user.github.io/website/子目录下,但Franklin.jl默认生成的资源链接为指向站点根目录的绝对路径,导致路径寻址不匹配。

修复操作步骤

  • 第一步:修改Franklin项目配置
    打开项目根目录下的config.md文件,添加如下配置项:
@def prepath = "website"

其中website为你的GitHub仓库名称,即站点子路径的对应目录名。
如果需要生成不带开头斜杠的相对路径(和你手动修改的效果完全一致),可以额外添加配置:

@def absolute_links = false
  • 第二步:重新构建静态文件
    配置修改完成后,在Franklin运行环境中执行build()命令重新生成站点文件,此时所有自动生成的资源链接、内部跳转链接都会自动适配子路径规则:
    • 默认开启absolute_links时,样式表链接会自动生成为/website/css/styles.css,完全匹配GitHub Pages的路径规则
    • 关闭absolute_links时,样式表链接会自动生成为css/styles.css,无需手动修改任何HTML文件
  • 第三步:重新部署到GitHub Pages
    将新生成的静态文件推送到gh-pages分支,刷新站点即可正常加载CSS样式和其他资源。

补充说明

所有需要部署在域名非根目录下的静态站点,都需要在静态生成阶段配置对应的子路径前缀,这是静态站点生成框架的通用配置要求,并非Franklin.jl独有的设置项。

内容的提问来源于stack exchange,提问作者Eduardo Uriegas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 17:06:05