From Vercel to Cloudflare Pages: Migrating a Next.js 15 Blog to Static Edge Hosting
Stripping away the hidden complexity of serverless functions to bake Next.js 15 into pure static HTML on Cloudflare's global edge network.
Related Articles

Fixing Zero Google Traffic & AdSense 'ads.txt Not Found' on Next.js 15 + Cloudflare Pages
Why did Google AdSense fail to read a 200 OK ads.txt file? How querying Cloudflare GraphQL firewall logs exposed Bot Fight Mode blocking Google crawlers, plus 5 technical SEO fixes for Next.js static blogs.

When Context Outweighs Code: 4 Battle-Tested Tips to Turn Dev History into Knowledge Assets with Obsidian
In the era of Vibe Coding, how a senior InfoSec specialist and passionate hobbyist maker combines AI coding assistants with Obsidian to capture debugging context and build a continuous knowledge feedback loop.

Reverse Engineering RS485 Wallpad to Bento UI: How AI Powered My Home Assistant Overhaul
From sniffing raw RS485 serial frames to permanently curing the cold-reboot USB port mismatch bug and crafting a modern Bento Grid dashboard with AI pair programming.
© 2026 HEISENBUG. All rights reserved. Unauthorized reproduction or redistribution is strictly prohibited.
This article reflects personal experiences and opinions as of the date of publication.
Table of Contents
- "Does a personal tech blog really need serverless functions?"
- Why Cloudflare Pages Static Hosting?
- Battle-Tested Migration: 4 Pitfalls and Fixes
- Pitfall 1: searchParams and the CSR Prerender Bailout
- 💡 The Solution:
- Pitfall 2: Vanishing Route Handlers & RSS Feeds
- 💡 The Solution:
- Pitfall 3: Enforcing force-static for robots.txt and sitemap.xml
- 💡 The Solution:
- Pitfall 4: Giscus Comments and Build-Time Environment Inlining
- 💡 The Solution:
- Zero-Downtime DNS Cutover: Switching from Vercel to Cloudflare
- Closing Thoughts: The Power of Architectural Simplicity
Comments