Rate Limiter
ScraperBlock's rate limiter tracks request counts per IP using WordPress transients.
How It Works
- On each request, ScraperBlock checks (or creates) a transient keyed by the visitor's IP hash.
- The transient stores the request count and a 60-second expiry.
- If the count exceeds Requests Per Minute, a
429 Too Many Requestsresponse is returned. - The block persists until the transient expires (60 seconds from first request in the window).
IP Detection
Rate limiting uses proxy-aware IP detection, checking headers in this order:
HTTP_CF_CONNECTING_IP(Cloudflare)HTTP_X_FORWARDED_FOR(first IP)HTTP_X_REAL_IPREMOTE_ADDR
💡
If legitimate users are being rate-limited (e.g., on media-heavy pages with many parallel requests), increase the Requests Per Minute threshold or enable Exempt from Rate Limit on specific pages via the Per-Page Control.