Field note 02

Notes on URL Normalization

Two URLs can appear similar to a reader while remaining distinct inputs to a parser or cache.

Representations and identity

Case, percent-encoding, trailing slashes, query ordering and fragments each have different rules. A careful comparison records the requested representation as well as the final representation shown in a report.

Follow the sequence

Redirects, canonical links and client-side navigation add stages to the URL lifecycle. Recording each stage prevents a final URL from being mistaken for the original input.

Avoid premature conclusions

A normalization difference can be ordinary behavior. Its significance depends on the rule being tested and the boundary that relies on that rule.

← All field notes