Why your 301 redirects silently become 302s by Tony NguyenWhy your 301 redirects silently become 302s by Tony Nguyen

Why your 301 redirects silently become 302s

Tony Nguyen

Tony Nguyen

A technical note for teams moving from Netlify to Cloudflare. A _redirects rule with no status code returns 301 (Moved Permanently) on Netlify but 302 (Found, a temporary redirect) on Cloudflare Pages and Workers static assets. Nothing errors, so it is easy to miss, and Google does not treat a temporary redirect as a canonical signal. The note shows how to detect it with curl, fix it with explicit codes, and check before the DNS (Domain Name System) switch.
Like this project

Posted Oct 16, 2026

A technical note for teams moving from Netlify to Cloudflare.