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

Eleventy生成的robots.txt在Lighthouse及谷歌测试工具中验证失败求助

解决Eleventy生成robots.txt的语法错误问题

问题根源

你遇到的robots.txt is not valid和语法错误,核心原因是robots.txt的指令格式不符合规范:

  • 你在robots.html模板里把User-agent、Disallow、Allow、Sitemap所有指令挤在了同一行,导致生成后的文件违反了robots.txt的基本语法规则——每个指令必须单独占用一行。
  • 生成文件开头的多余空行通常不会触发语法错误,但也可以通过调整模板避免。

解决方案

修改/src/robots.html模板,确保每个指令单独分行,同时移除frontmatter后的多余空行:

---
permalink: /robots.txt
layout: null
eleventyExcludeFromCollections: true
---
User-agent: *
Disallow: /admin/
Allow: /
Sitemap: {{ client.domain }}/sitemap.xml

验证效果

修改后重新构建项目,生成的/public/robots.txt应该呈现为以下格式:

User-agent: *
Disallow: /admin/
Allow: /
Sitemap: https://rklogginglumber.com/sitemap.xml

这个格式完全符合robots.txt的语法规范,Lighthouse和谷歌的robots测试工具将不再报错。

额外说明

关于你的sitemap.xml被压缩成一行的问题,这属于XML的正常情况(压缩格式不影响搜索引擎解析),如果需要格式化输出,可以调整eleventy-plugin-sitemap的配置,添加格式化参数,但这不是导致当前错误的原因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 15:55:21