
Web geliştirme genellikle yeni bir etki alanına geçmek, gezinmeyi iyileştirmek veya güvenliği uygulamak gibi çeşitli amaçlarla kullanıcıları bir URL’den diğerine yönlendirmeyi içerir.
Server-Side Yönlendirme ve Client-Side Yönlendirme altında birkaç yönlendirme türü mevcuttur.
Server-Side Yönlendirme:
Client-Side Yönlendirme:
Her yönlendirme yönteminin bir amacı ve etkisi vardır, bazıları güncel ve SEO dostu değildir. Yönlendirme türlerinin etkileri ve SEO uyumlulukları ile ilgili detaylar aşağıdadır.
| Etki | SEO Uyumluluğu | ||
| Server-Side Yönlendirme (Sunucu Tarafla Yönlendirme) | 301 Yönlendirmesi (Kalıcı Yönlendirme) | Bir URL’nin kalıcı olarak yeni bir konuma taşındığını belirtir. Arama motorları, SEO değerinin (bağlantı eşitliği) çoğunu yeni URL’ye aktarır. | Evet |
| 302 Yönlendirmesi (Geçici Yönlendirme) | Bir URL’nin geçici olarak taşındığını belirtir. Taşıma kalıcı olmadığı için arama motorları SEO değerini aktarmaz. | Bu yönlendirme uzun kalırsa, bunu 301 olarak değerlendirip sayfaları güncelleyebilirler ve 302 SEO dostu olur. | |
| 307 Yönlendirmesi (Geçici Yönlendirme) | Geçici yönlendirmenin HTTP/1.1 sürümü (302’ye benzer). POST veya GET gibi HTTP yöntemlerini korurken geçici yönlendirmeler. | – | |
| 308 Yönlendirmesi (Kalıcı Yönlendirme) | Kaynağın kalıcı olarak yeni bir URL’ye taşındığını bildirir ve HTTP istek yönteminin (ör. POST, PUT) ve gövdenin değişmeden kalmasını sağlar. | 301 yönlendirmesine benzer şekilde, bağlantı eşitliğini yeni URL’ye aktararak orijinal sayfanın SEO etkisinin korunmasını sağlar. | |
| Client-Side Yönlendirme | JavaScript Yönlendirmesi | İstemci tarafı JavaScript kodunu kullanarak yönlendirme yapar. | SEO dostu değildir ve kullanıcının tarayıcısında etkinleştirilen JavaScript’e bağlıdır. |
| Meta Refresh Yönlendirmesi | Sunucu yerine sayfa düzeyinde uygulanır. | SEO açısından zayıf, genellikle güncelliğini yitirmiş sayılır. |
PHP kullanarak 301 yönlendirmesi.
header('HTTP/1.1 301 Moved Permanently');
header('Location: https://www.example.com/newurl');
exit();Apache sunucusunda .htaccess kullanarak 301 yönlendirmesi
# Redirecting a single page
Redirect 301 /old-page.html https://www.example.com/new-page.html# Redirecting the entire domain
RewriteEngine On
RewriteCond %{HTTP_HOST} ^oldexample\.com$ [NC]
RewriteRule ^(.*)$ https://www.newexample.com/$1 [R=301,L]
# Redirecting a folder
Redirect 301 /old-folder/ https://www.example.com/new-folder/PHP kullanarak 302 yönlendirmesi.
header('HTTP/1.1 302 Found');
header('Location: https://www.example.com/newurl');
exit();Apache sunucusunda .htaccess kullanarak 302 yönlendirmesi
# Redirecting a single page
Redirect 302 /temp-page.html https://www.example.com/another-temp-page.htmlJavaScript yönlendirmesi, JavaScript kodunu kullanarak kaynaktan hedefe yönlendirme yöntemidir.
Not: JavaScript yeniden yönlendirmesi HTTP yanıt kodunu etkilemez; 3xx yanıt koduyla sonuçlanmaz ve bu yöntem SEO dostu değildir. JavaScript yönlendirmelerini yalnızca sunucu tarafı veya meta yenileme yönlendirmeleri yapamıyorsanız kullanın.
if (window.location.origin === "https://example.com/page-a") {
var path = window.location.pathname;
window.location.replace("https://example.com/page-b" );
}Also, you can use window.location.pathname it for JavaScript redirection.
if (window.location.origin === "https://example.com/page-a") {
var path = window.location.pathname;
window.location.replace("https://example.com" + path );
}JavaScript Yönlendirme Örneği:

Aşağıdaki yönlendirme yöntemi, sayfanın HTML meta etiketiyle yüklenmesinden 5 saniye sonra sayfayı yeniden yönlendirir.
<meta http-equiv="refresh" content="5;url=https://www.example.com/page-a">Yukarıdaki meta kod <head> etiketi içerisinde olmalıdır.
Yönlendirme işleminin geri alınmayacağından eminseniz en iyi yönlendirme yöntemi 301 yönlendirmedir.
Kaynak:
İlişkili SEO Konuları