Eleventy博客构建异常:build正常但--serve无内容显示
问题排查与解决
1. 静态文件路径不匹配
你的.eleventy.js里配置了input: '_src',但addPassthroughCopy用的是src/images这类路径,这会导致11ty找不到对应的静态文件,页面依赖的CSS/JS无法加载,最终显示空白。
修正方法:
如果静态文件存放在_src/images、_src/css、_src/js目录下,把静态文件复制代码改成:
eleventyConfig.addPassthroughCopy('images'); eleventyConfig.addPassthroughCopy('css'); eleventyConfig.addPassthroughCopy('js');
如果静态文件在项目根目录的src文件夹下(和_src同级),要么调整addPassthroughCopy的路径为src/images,要么把静态文件移到_src目录下,保持与input目录的一致性。
2. 布局文件配置或内容问题
检查_src/_layouts目录下的布局文件(比如base.njk或default.html):
- 确保布局文件里包含
{{ content }}占位符,用来渲染页面内容。没有这个占位符的话,即使页面内容正常,也不会显示任何内容。 - 检查布局文件的模板语法是否正确(比如Nunjucks标签是否闭合)。
3. 页面Front Matter配置问题
检查你的Markdown/HTML页面的Front Matter:
- 确保页面开头有正确的Front Matter标记(用
---包裹),并且指定了正确的布局,例如:--- layout: base.njk --- 这里是页面内容 - 若未指定
layout,11ty可能不会使用布局渲染,或使用未配置的默认布局,导致内容无法正常展示。
4. 开发服务器路径与控制台排查
运行eleventy --serve后,确认访问的URL正确(比如首页对应http://localhost:8080/)。同时打开浏览器开发者工具(F12),查看控制台是否有404错误(比如CSS/JS文件找不到),这能帮你定位具体问题。
内容的提问来源于stack exchange,提问作者Carol.Kar
相关产品推荐
相关产品推荐

