... location / { if ($http_user_agent ~* "python|curl|java|wget|httpclient|okhttp") { return 503; } # 正常处理 ... } ...
变量$http_user_agent是一个可以直接在location中引用的Nginx变量。~*表示不区分大小写的正则匹配,通过python就可以过滤掉80%的Python爬虫。
$http_user_agent
location
~*
python