Pre-deployment redirect QA

Batch Redirect Rule Unit Tester

Prove how a proposed Apache or Nginx rule set handles expected URLs before deployment. See the matched conditions, captures, destination, status, next hop, and exact reason each case passed or failed.

Browser-only processingNo server changesExplainable tracesCSV, JSON, and Markdown exports

Add data → Configure → Analyze

Build the test suite

1

Choose the server and add rules

Paste a configuration excerpt or choose a local text file.

Server mode
Supported lines are converted to a typed rule model. Unsupported lines remain visible as warnings.0 lines
No file chosen

Processed locally in your browser. Your files are not uploaded.

2

Add test cases and map columns

Use CSV or TSV. Only input_url is required.

Blank expected_destination means the URL is expected not to redirect. Maximum 100,000 rows or 20 MB.0 rows
No file chosen

Processed locally in your browser. Your files are not uploaded.

Column mapping
3

Configure comparison and scope

Defaults match common migration checks without hiding URL differences.

Parser readiness

Add rules to review supported and unsupported lines.

    Simulation limit: Results cover only supplied URLs and the documented safe syntax subset. Confirm unsupported and context-dependent behavior on staging before deployment.

    Rule trace

    What the simulator checks

    Explainable rule traces

    Review conditions, captures, substitutions, status, stop decisions, and every simulated hop.

    Migration assertions

    Compare expected and actual status, destination, query behavior, chain depth, loops, and no-redirect cases.

    Coverage evidence

    See which rules were exercised, unused, or shadowed for the supplied test suite.

    Safe supported syntax

    Apache: RewriteEngine; RewriteCond for host, request URI, and query string; RewriteRule; Redirect; RedirectMatch; and common R/status, L, END, NC, QSA, QSD, and NE flags.

    Nginx: return 301/302/307/308; rewrite with last, redirect, or permanent; and simple exact, prefix, and regex location contexts.

    Unsupported directives are reported by line and are never treated as understood. This tool does not fetch live URLs or modify server files.

    Recommended pre-deployment workflow

    1. Export the old-to-new URL plan from the Redirect Map Builder.
    2. Generate or paste the proposed Apache or Nginx rules.
    3. Add positive expectations and negative cases that must remain unchanged.
    4. Fix failures, loops, chains, query issues, and untested rules.
    5. Deploy to staging, rerun the suite against the real server, then keep the exported CSV as a regression test.

    Frequently Asked Questions

    No. It parses the rules as text and simulates the documented safe subset in your browser. It never connects to, changes, or executes commands on a server.
    No. Rule text, files, URLs, traces, and exports stay in your browser. A normal refresh clears the working data.
    No. A passing suite is evidence for the supplied cases and supported syntax. Server context, modules, includes, maps, filesystem checks, application routing, and unsupported directives still require staging verification.
    The safe subset includes RewriteEngine, RewriteCond for HTTP_HOST, REQUEST_URI, and QUERY_STRING, RewriteRule, Redirect, RedirectMatch, and common R, status, L, END, NC, QSA, QSD, and NE flags. Unsupported lines are identified by line number.
    The safe subset includes return redirects, rewrite with last, redirect, or permanent, and simple exact, prefix, and regex location contexts. Includes, maps, variables outside the documented subset, and application rewrites may require staging tests.
    Patterns are parsed, length-limited, and checked before simulation. Lookarounds, regex backreferences, nested quantifiers, and other constructs outside the safe subset are reported as unsupported instead of being executed.
    Reviewed Jul 2026 · Sources and limitations

    Review details: 2026-07-13 · Marc LaClear · v1.0.2

    Reference sources:

    Known limits:

    • This is a deterministic simulator for a documented safe subset, not a byte-for-byte Apache or Nginx runtime.
    • Includes, maps, filesystem tests, environment variables, application handlers, module-specific behavior, and unsupported directives are not simulated.
    • Overmatching and shadowing findings are limited to the URLs supplied in the test suite; they do not prove universal safety.
    • Regular-expression support intentionally excludes constructs that cannot be modeled within the bounded safe subset.
    • Validate important redirect changes on staging and keep a rollback copy of the working server configuration.

    Report an issue with this tool