HTTP 308 Permanent Redirect
Katı kurallara sahip kalıcı bir yönlendirme: URL kalıcı olarak taşındı ve istek değiştirilmeden tekrarlanmalı.
HTTP 308 ne anlama gelir
HTTP 308 Permanent Redirect, 301'in yöntem koruyan kardeşidir. Kaynak kalıcı olarak Location URL'sine taşınmıştır ve istemciler isteği orada yöntemi değiştirmeden veya gövdeyi düşürmeden tekrarlamalıdır.
En çok API'ler için önemlidir: POST veya PUT kabul eden bir uç nokta kalıcı olarak taşınırsa, bir 301 eski istemcilerin sessizce GET ile yeniden denemesine ve yükü kaybetmesine neden olabilir. Bir 308, yazmayı bozulmadan tutar.
308 yanıtlarının yaygın nedenleri
- Yazma işlemlerini kabul eden bir API uç noktası kalıcı olarak yeni bir yola veya alan adına taşındı.
- Altyapı düzeyinde kanonikleştirme (örn. Cloudflare veya bir yük dengeleyici) yöntemleri koruyacak şekilde yapılandırılmış.
- Sondaki eğik çizgi normalleştirmesi için varsayılan olarak 308 kullanan bir çerçeve (Next.js, bazı CDN'ler).
Geliştiriciler için iyi uygulamalar
- GET olmayan istekler eski URL'ye ulaşabildiğinde 301 yerine 308'i tercih edin.
- 301'de olduğu gibi tek bir sıçramada yönlendirin ve yönlendirmeyi uzun vadeli olarak yerinde tutun.
- Eski API istemcilerinin 308'i işlediğini doğrulayın — çok eski HTTP kütüphaneleri bunu otomatik olarak takip etmeyebilir.
Örnek yanıt
HTTP/1.1 308 Permanent Redirect Location: https://api.example.com/v2/upload
SEO etkisi
Arama motorları için bir 308, bir 301'e eşdeğerdir: dizinleme ve sıralama sinyallerini hedef URL'ye aktaran kalıcı bir taşıma. Aralarında seçim yaparken SEO'ya değil istemcilere göre karar verin.
SSS
308, SEO için 301 ile aynı mı?
Evet — Google her ikisini de kalıcı bir taşıma olarak ele alır ve sinyalleri yeni URL'ye aktarır.
308, 301 yerine ne zaman gereklidir?
Yönlendirilen istekler POST, PUT, PATCH veya DELETE olabildiğinde ve yöntem ile gövdenin korunması gerektiğinde.
Tüm tarayıcılar 308'i destekliyor mu?
Tüm modern tarayıcılar destekler. Yalnızca çok eski istemcilerde (örn. Windows 7 dönemi IE, eski HTTP kütüphaneleri) eksiklikler vardı.