Block AI bots

This commit is contained in:
2024-06-16 09:20:32 +10:00
parent c91632aa8e
commit be329447ab
3 changed files with 11 additions and 0 deletions

View File

@@ -23,6 +23,13 @@ use Rack::Rewrite do
}
end
require "rack/attack"
use Rack::Attack
Rack::Attack.blocklist("block AI") do |req|
req.user_agent.match /AdsBot-Google|Amazonbot|anthropic-ai|Applebot|Applebot-Extended|AwarioRssBot|AwarioSmartBot|Bytespider|CCBot|ChatGPT-User|ClaudeBot|Claude-Web|cohere-ai|DataForSeoBot|Diffbot|FacebookBot|FriendlyCrawler|Google-Extended|GoogleOther|GPTBot|img2dataset|ImagesiftBot|magpie-crawler|Meltwater|omgili|omgilibot|peer39_crawler|peer39_crawler\/1.0|PerplexityBot|PiplBot|scoop.it|Seekr|YouBot/
end
require "adamantium/middleware/header_fix"
use Adamantium::Middleware::HeaderFix do |headers, env|
unless headers["Content-Type"]&.downcase&.include?("xml") || headers["Content-Type"]&.downcase&.include?("json")