Skip to content

Pattern & Response Playground ​

Use this interactive playground to test RouteWarden's URL path normalization, built-in sensitive file blocking, allowlist bypasses, and custom regex rules. Simulate the live HTTP response returned by RouteWarden (including deceptive honeypots, gzip bombs, tarpits, and custom payloads) and export ready-to-use configurations for Caddy, NGINX (Lua / OpenResty), Traefik (YAML & TOML), Docker Compose, or Kubernetes.

Shareable Playground URLs: Click the Share button below the path bar to generate a direct link containing your current test path, HTTP method, client IP, custom rules, and response settings. Anyone opening the link will reproduce the exact simulation state.

BLOCK
Try:
Anti-Evasion:/.env(Decoded 2 layer(s) percent-encoding, Canonicalized traversal (/../))
Block Patterns (blockPatterns)
Allow Patterns (allowPatterns)
Middleware Options
Check Headers:
Allowed IPs:
Trusted Proxies:
Inspect HTTP Verbs (methods):Non-selected verbs bypass inspection and forward directly to upstream backends
HTTP Response
Custom Body:
⚡ Verdict for Each HTTP Verb:Click any verb to inspect its live simulated response payload below
GET /.env403 Forbidden— Matches built-in pattern: (?i)(^|/)(\.env.*|.*\.(txt|log|bak|backup|sql|conf|config|ini|yaml|yml))$ on candidate path '/%252e%252e/.env'
Server:RouteWarden
X-RouteWarden-Blocked:true
X-Content-Type-Options:nosniff
Content-Type:application/json; charset=utf-8
{
  "error": "Forbidden",
  "status": 403,
  "message": "Access denied by RouteWarden security policy"
}
● routewarden.yml
http:
  middlewares:
    routewarden:
      plugin:
        routewarden:
          allowedIps:
            - "127.0.0.1"
            - "10.0.0.0/8"
          response:
            mode: json

How RouteWarden Evaluates Requests ​

The simulator follows the canonical evaluation sequence implemented identically across RouteWarden's Go core and OpenResty Lua modules:

Incoming HTTP Request 1. IP Whitelist Match? Matches allowedIps or CIDRs (socket or X-Forwarded-For) IP Bypass No Match 2. Anti-Evasion Engine • Multi-layer unescape (%252e ➔ .) • Semicolon strip (/path;param/..) • Backslash convert (\\ ➔ /) • Traversal canonical (/static/../.env ➔ /.env) Canonical Candidates 3. Allowlist Check Built-in safe rules (/robots.txt, /.well-known/*) & custom allowPatterns Exemption Not Allowed 4. Blocklist Check Built-in sensitive dictionaries (.env, .git, dumps) & custom blockPatterns Clean Pass Forbidden Match 5. Intercepted & Challenged Active response: JSON / HTML error, Captcha (Turnstile/hCaptcha), Tarpit, or Drop Clean Request FORWARDED TO BACKEND • Passes to backend server • Zero added latency for clean traffic • Protected against bypass evasions • Emits standard 200/2xx OK

Released under the MIT License.