AWS环境下如何防止搜索引擎抓取索引.dev后缀的staging域名
禁止.dev域名staging环境被搜索引擎抓取的AWS栈实操方案
最优方案:CloudFront层面配置X-Robots-Tag响应头(推荐)
该方案不需要修改应用代码,在CDN层全局生效,是搜索引擎官方认可的禁止索引方式,所有主流爬虫都会遵守该规则。
操作步骤:
- 打开AWS CloudFront控制台,找到对应.dev域名的分发配置
- 进入「行为」选项卡,选中默认缓存行为,点击编辑
- 找到「响应头策略」配置项,可选择修改现有策略或新建自定义响应头策略
- 在自定义响应头列表中添加如下规则:
- 响应头名称:
X-Robots-Tag - 响应头值:
noindex, nofollow, noarchive - 不设置适用路径例外,覆盖所有请求
- 响应头名称:
- 保存配置后等待CloudFront分发生效,生效时间通常为5-10分钟
补充方案:配置robots.txt禁止爬虫爬取
注意:该方案优先级低于X-Robots-Tag,部分小众爬虫可能不遵守robots.txt规则,仅建议作为补充方案使用
操作步骤:
- 在应用根路径配置
/robots.txt接口,返回如下内容:
User-agent: * Disallow: /
- 若不想修改应用代码,可直接在ALB负载均衡层面配置规则:当请求路径匹配
/robots.txt时,直接返回200状态码,响应体为上述禁止爬取的规则内容
可选安全加固(从根源避免外部访问)
如果不需要对外开放staging环境,可额外配置以下规则彻底避免被搜索引擎抓取:
- 为CloudFront配置IP访问白名单,仅允许公司办公网、VPN出口等可信IP访问站点
- 在CloudFront或ALB层配置基础身份验证(Basic Auth),无验证信息的请求直接被拦截,无法访问站点内容
配置验证方式
- 访问.dev域名任意页面,打开浏览器开发者工具的「网络」选项卡,查看响应头中是否存在
X-Robots-Tag: noindex, nofollow, noarchive - 访问
https://{你的.dev域名}/robots.txt,确认返回的是禁止所有爬虫爬取的规则
内容的提问来源于stack exchange,提问作者Luke Skywalker
相关产品推荐
相关产品推荐

