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

如何将Apache拦截恶意爬虫的SetEnvIf指令转为Nginx配置?

Apache防坏爬虫规则转Nginx配置

原Apache代码通过匹配User-Agent标记恶意爬虫并拒绝访问,对应Nginx的配置如下:

# 匹配指定恶意爬虫的User-Agent,返回403拒绝访问
if ($http_user_agent ~* (yandex|baidu|spider|mj12|blex|webmeup|ichiro|moget|naverbot|sogou|youdao|majestic|copyscape|sitesnagger|teleportpro|copier|reaper|stripper|webzip|peek|scrape|grub|linkdex|zyborg|zibber|bullseye|blowfish|backdoor|spyder|download|demon|linklooker|emailcollector|emailsiphon|emailwolf|creep|getright|suck|ninja|ahrefsBot|semrush|petalbot|dataforseobot|dotbot|meta)) {
    return 403;
}

配置说明:

  • ~* 表示不区分大小写的正则匹配,对应Apache的SetEnvIfNoCase
  • 把所有需要拦截的爬虫关键词整合到正则表达式中,匹配到后直接返回403 Forbidden,实现原规则中拒绝恶意爬虫的效果
  • 将这段代码放到你的Nginx站点配置的server块内即可生效

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 18:32:44