网站robots.txt编写教程,引导搜索引擎抓取
robots.txt 是放在网站根目录下的纯文本文件,
用来告诉搜索引擎哪些页面可以抓取、
哪些不能。它不会强制阻止爬虫,
但绝大多数正规搜索引擎会遵守。 对零基础站长来说,
写好这个文件能避免后台、
程序文件被收录,
也能把爬虫引导到真正需要曝光的页面。
下面从文件放置、指令写法、常见坑和验证方法四步讲清楚。
文件该放哪、怎么建
robots.txt 必须放在网站根目录,文件名全小写,不能叫 Robots.txt 或 robots.TXT。
- 宝塔面板路径:
/www/wwwroot/你的域名/robots.txt - 命令行创建:
touch /www/wwwroot/你的域名/robots.txt - 权限建议:
chmod 644 robots.txt,确保 Web 服务可读
建好后用浏览器访问 https://你的域名/robots.txt,能直接看到内容就说明位置正确。
核心指令与常用写法
robots.txt 的语法很简单,常用指令只有几个:
User-agent:指定规则针对哪个爬虫,*代表所有爬虫Disallow:禁止抓取的路径,留空表示允许全部Allow:允许抓取的路径,常用于覆盖 DisallowSitemap:告诉爬虫网站地图地址,建议加上
一个适合大多数企业站和博客的基础模板:
User-agent: *
Disallow: /admin/
Disallow: /includes/
Disallow: /tmp/
Allow: /
Sitemap: https://你的域名/sitemap.xml
这段规则的意思是:所有爬虫可以抓取整站,但不要抓 /admin/、/includes/、/tmp/ 这些目录,同时把网站地图位置告诉爬虫。
如果网站有多个子目录需要精细控制,可以分开写多组 User-agent,但同一爬虫的多条规则会合并,冲突时 Allow 优先于 Disallow。
容易踩坑的地方
写 robots.txt 最怕两件事:误屏蔽和写错语法。
- 别用 Disallow: / 屏蔽整站:这会让搜索引擎完全不收录你的网站,除非是测试站,否则不要这么写。
- 路径大小写敏感:Linux 服务器区分大小写,
/Admin/和/admin/是不同的路径,写错就屏蔽不到。 - 不要阻止 CSS 和 JS:如果屏蔽了
/css/或/js/,搜索引擎无法渲染页面,可能影响排名。 - 注释用 # 开头:但不要在一行中间加注释,容易导致规则解析错误。
- 不要写通配符:标准 robots.txt 不支持
*通配符路径,像Disallow: /*.php$这种写法只有部分搜索引擎支持,建议以官方文档为准。
怎么验证是否生效
写完不要凭感觉,用下面几种方式检查:
- 浏览器直接访问:
https://你的域名/robots.txt,确认内容完整,没有 404。 - 百度搜索资源平台:登录后进入「robots 检测」工具,输入网址测试具体 URL 是否被允许。
- Google Search Console:使用「robots.txt 测试工具」实时验证规则。
- 查看服务器日志:观察搜索引擎爬虫的访问记录,确认它们是否在抓取你允许的页面。
一个可独立判断的结论:
如果 robots.txt 返回 404,
搜索引擎会认为没有限制,
可能抓取全站,
包括你不想公开的目录。 所以即使不打算限制,
也建议放一个空文件或只写 Sitemap。
常见疑问
robots.txt 能阻止页面被收录吗? 不能完全阻止。
它只是禁止爬虫抓取,但如果其他网站有链接指向你的页面,搜索引擎仍可能通过链接收录。
真正要屏蔽收录,应该用 noindex 标签。
修改后多久生效? 没有固定时间,取决于搜索引擎重新抓取 robots.txt 的频率,通常几小时到几天不等。
子域名需要单独写吗? 需要。
robots.txt 只对当前域名和协议生效,每个子域名都要单独放置。
最后提醒:
robots.txt 是引导爬虫的礼貌约定,
不是安全工具。重要后台请加密码或限制 IP,
不要只靠 Disallow 保护。 按本文步骤配置后,
建议用搜索资源平台测试一次,
确认无误再提交网站地图。