18 Eylül 2026
Next.js App Router 404 Tracking ve Redirect Rehberi
Next.js App Router projelerinde `notFound()`, `redirect()` ve `permanentRedirect()` davranışlarını doğru kullanarak 404 trafiğini izleme ve yönlendirme rehberi.

Next.js App Router, bulunamayan içerikler ve yönlendirmeler için yerleşik araçlar sunar. Ancak teknik olarak doğru 404 response üretmek ile gerçek kullanıcıların hangi bozuk URL’lere geldiğini analiz etmek iki ayrı problemdir.
notFound() ne zaman kullanılmalı?
Bir route geçerli olduğu halde istenen içerik bulunamıyorsa notFound() doğal çözümdür. Örneğin /products/[slug] route’u vardır fakat veritabanında o slug’a karşılık ürün yoktur. Bu durumda kullanıcıya not-found.tsx üzerinden uygun hata deneyimi gösterilebilir.
Bu URL’nin gerçekten başka bir içeriğe taşındığını biliyorsanız ise 404 üretmek yerine redirect düşünülmelidir.
redirect() ve permanentRedirect() aynı şey değildir
Next.js dokümantasyonu geçici ve kalıcı yönlendirme ihtiyaçlarını ayrı fonksiyonlarla ele alır. Kaynak URL ileride tekrar kullanılacaksa geçici davranış; içerik kalıcı olarak yeni bir adrese taşındıysa kalıcı yönlendirme mantığı daha uygundur.
Örnek senaryo:
/eski-dokuman → /docs/yeni-dokuman
Taşınma kalıcıysa kullanıcı ve arama motoruna bunun kalıcı bir değişiklik olduğu açıkça anlatılmalıdır.
Dynamic route’larda 404’ler neden önemlidir?
Next.js projelerinde 404 trafiği çoğu zaman şu kaynaklardan gelir:
Değişen slug’lar
Silinen ürün veya blog içerikleri
Eski deploy’lardan kalan bağlantılar
Yanlış oluşturulmuş internal linkler
Google’daki eski indeks URL’leri
Dış backlinkler
Sadece not-found.tsx tasarlamak bu kaynakların hangisinin trafik ürettiğini göstermez.
404 tracking nasıl düşünülmeli?
İdeal akış şudur:
Kullanıcı URL’ye gelir.
Uygulama içeriği çözmeye çalışır.
İçerik bulunamazsa URL ve gerekli request bağlamı analiz katmanına aktarılır.
Bilinen yeni bir hedef varsa redirect uygulanır.
Güvenilir hedef yoksa gerçek 404 response korunur.
Bu yaklaşım, her 404’ü rastgele ana sayfaya göndermekten çok daha güvenlidir.
Server-side yaklaşım neden önemli?
Google Search Central mümkün olduğunda server-side redirect kullanımını önerir. Next.js’in server-side routing araçları bu nedenle yalnızca kullanıcı deneyimi değil arama motoru davranışı açısından da önemlidir. JavaScript ile client-side yönlendirmeyi varsayılan çözüm haline getirmek yerine framework’ün sunucu tarafı yetenekleri kullanılmalıdır.
no404 ile Next.js 404 trafiği
no404, Next.js uygulamasında bozuk URL taleplerini merkezi bir panelde görme ve uygun eşleşmeler için redirect kararları üretme senaryosuna oturabilir.
Örneğin:
/products/old-slug → 404 → /products/new-slug eşleşmesi → redirect
Eşleşme yoksa uygulamanın normal notFound() davranışı devam eder.
Sonuç
Next.js App Router’da 404 yönetiminin üç parçası vardır: doğru HTTP davranışı, iyi kullanıcı deneyimi ve gerçek trafik gözlemi. notFound() doğru olmayan içeriği açıkça sonlandırır; redirect fonksiyonları taşınmış içerikleri yeni hedefe götürür; 404 tracking ise hangi URL’lerin gerçekten sorun oluşturduğunu gösterir.
no404 bu üçüncü katmanı sağlayarak Next.js uygulamalarında bozuk URL’leri gerçek trafik verisine göre önceliklendirmeye yardımcı olabilir.