404 Hatası Nasıl Yönlendirilir: Apache, Nginx & PHP için Tam Kılavuz
404 hatası, bir web sitesinin karşılaşabileceği en yaygın — ve en zararlı — sorunlardan biridir. Ziyaretçi artık mevcut olmayan bir sayfaya geldiğinde, çıkmaz bir sokakla karşılaşır. Bu bozuk deneyim kullanıcıları uzaklaştırır, bounce oranlarını artırır ve zaman içinde arama motoru sıralamalarınızı sessizce aşındırır.
İyi haber? Doğru yönlendirme stratejisiyle, bu 404 hatalarını engelleyebilir, kullanıcıları ilgili içeriğe yönlendirebilir ve hem trafiğinizi hem de SEO’nuzu koruyabilirsiniz. Bu kapsamlı rehber, Apache’nin .htaccess, Nginx sunucu blokları ve PHP tabanlı çözümler dahil olmak üzere 404 hatalarını yönlendirmenin her ana yöntemini kapsar — bugün uygulayabileceğiniz gerçek yapılandırma örnekleriyle.
404 Hatası Nedir ve Neden Önemlidir?
Bir 404 Not Found hatası, sunucu tarafından istenen kaynağı bulamadığında döndürülen bir HTTP durum kodudur. Bu birkaç nedenden dolayı gerçekleşir:
- Bir sayfa yeniden yönlendirme olmadan silinmiş veya taşınmış
- Bir kullanıcı bozuk veya eski bir harici bağlantıyı takip etmiş
- Bir URL yanlış yazılmış veya site göçü sırasında yeniden yapılandırılmış
- İç bağlantılar içerik değişikliklerinden sonra güncellenmemiş
Kullanıcı deneyimi perspektifinden, 404 sayfasına ulaşmak sinir bozucu bir durumdur. SEO perspektifinden, arama motorlarına sitenizin yapısal sorunları olduğunu gösterir. Tarama bütçesi boşa harcanır, bağlantı değeri kaybolur ve sıralamalar zarar görebilir — özellikle yüksek otoriteli geri bağlantılar ölü URL’leri işaret ediyorsa.
Uygun 404 yeniden yönlendirmeleri uygulamak isteğe bağlı bakım değildir. Bu, sağlıklı ve iyi optimize edilmiş bir web sitesi çalıştırmanın temel bir parçasıdır.
Yöntem 1: .htaccess Kullanarak 404 Hatalarını Yönlendirme (Apache Sunucuları)
Web siteniz bir Apache web sunucusunda barındırılıyorsa, .htaccess dosyası sunucu düzeyinde yönlendirmeleri yönetmek için birincil araçtır. Bu yöntem hızlı, güvenilir ve programlama bilgisi gerektirmez.
Adım 1: .htaccess Dosyasını Bulun veya Oluşturun
.htaccess dosyası web sitenizin kök dizininde bulunur (genellikle public_html/ veya www/). Henüz yoksa, yeni bir düz metin dosyası oluşturun ve bunu tam olarak .htaccess olarak adlandırın — başındaki noktayı da dahil edin.
> İpucu: Barındırma ortamınızı bir kontrol paneli aracılığıyla yönetiyorsanız, bu dosyayı doğrudan dosya yöneticisinde bulabilir ve düzenleyebilirsiniz. cPanel ile VPS kullanan kullanıcılar bunu cPanel’in arayüzü altındaki yerleşik Dosya Yöneticisi aracılığıyla erişebilirler.
Adım 2: Özel 404 Hata Belgesi Ayarlayın
404 hatası oluştuğunda özel bir HTML sayfası sunmak için .htaccess dosyanıza aşağıdaki satırı ekleyin:
ErrorDocument 404 /custom-404-page.html/custom-404-page.html yerine özel hata sayfanızın gerçek yolunu yazın. Bu, Apache’ye varsayılan sunucu hata yanıtı yerine o sayfayı sunmasını söyler.
Adım 3: Tüm 404 Hatalarını Belirli Bir URL’ye Yönlendirin
Kullanıcıları yalnızca bir hata göstermek yerine çalışan bir sayfaya yönlendirmek istiyorsanız, Apache’nin mod_rewrite modülünü kullanın:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ https://yourdomain.com/new-page [R=301,L]Bunu ne yapar:
RewriteEngine On — yeniden yazma motorunu etkinleştirir
RewriteCond %{REQUEST_FILENAME} !-f — istenen dosyanın fiziksel olarak var olmadığını kontrol eder
RewriteRule ^(.*)$ https://yourdomain.com/new-page [R=301,L] — var olmayan tüm dosya isteklerini kalıcı (301) yönlendirme ile seçtiğiniz URL’ye yönlendirir
> Önemli: Kırık URL’leri yönlendirirken her zaman 301 yönlendirmeler (kalıcı) kullanın, 302 (geçici) değil. 301 yönlendirmesi hedef sayfaya bağlantı değerini aktarır ve arama motorlarına taşımanın kalıcı olduğunu söyler.
Adım 4: Belirli Ölü URL’leri Yönlendirin
Cerrahi hassasiyetle — tüm 404’leri yönlendirmek yerine bireysel kırık URL’leri yönlendirmek için — belirli yönlendirme kuralları ekleyin:
Redirect 301 /old-page https://yourdomain.com/new-page
Redirect 301 /deleted-article https://yourdomain.com/related-article
Bu yaklaşım, bir site taşıması sonrasında veya URL hiyerarşinizi yeniden yapılandırırken ideal olur.
Yöntem 2: Nginx’te 404 Yönlendirmelerini Yapılandırma
Sunucunuz Nginx çalıştırıyorsa, yönlendirme yapılandırması bir .htaccess dosyası yerine sitenizin yapılandırma dosyasının sunucu bloğunun içinde işlenir.
Adım 1: Nginx Yapılandırma Dosyasını Açın
Nginx yapılandırma dosyaları genellikle şu konumlarda bulunur:
/etc/nginx/sites-available/yourdomain.conf/etc/nginx/conf.d/yourdomain.confİlgili dosyayı bir metin düzenleyiciyle açın:
sudo nano /etc/nginx/sites-available/yourdomain.confAdım 2: Özel 404 Hata Sayfası Ayarlayın
server {} bloğunuzun içine aşağıdaki yönergeyi ekleyin:
error_page 404 /custom-404-page.html;Bu, bir 404 hatası tetiklendiğinde Nginx’e özel HTML sayfanızı sunmasını söyler.
Adım 3: 404 Hatalarını Başka Bir URL’ye Yönlendirin
404 oluştuğunda kullanıcıları çalışan bir sayfaya yönlendirmek için Nginx’in adlandırılmış konum özelliğini kullanın:
server {
listen 80;
server_name yourdomain.com;
location / {
try_files $uri $uri/ @custom_redirect;
}
location @custom_redirect {
return 301 https://yourdomain.com/new-page;
}
}Bu nasıl çalışır:
try_files $uri $uri/— Nginx önce istenen dosyayı veya dizini sunmaya çalışır- İkisi de yoksa,
@custom_redirectadlandırılmış konumuna geçer - Adlandırılmış konum, belirtilen hedef URL’ye bir 301 yönlendirmesi yayınlar
Adım 4: Nginx’i Test Edin ve Yeniden Yükleyin
Yapılandırmayı düzenledikten sonra, yeniden yüklemeden önce her zaman söz dizimi hatalarını test edin:
sudo nginx -tTest syntax is ok ile geçerse, değişiklikleri uygulamak için Nginx’i yeniden yükleyin:
sudo systemctl reload nginxSöz dizimi testini asla atlayın — yanlış yapılandırılmış bir Nginx dosyası tüm sitenizi çevrimdışı bırakabilir.
> Not: Nginx yapılandırmalarını yönetmek, sunucunuza tam kök erişiminiz olduğunda basittir. AlexHost’un VPS Hosting ve Dedicated Servers hizmetleri sunucu ortamınız üzerinde tam kontrol sağlayarak bu gibi yapılandırmaları hızlı ve kolay hale getirir.
Method 3: PHP ile 404 Yönlendirmelerini Yönetme
PHP çalıştıran siteler için, özel bir PHP hata sayfası kullanarak 404 yönlendirmelerini programlı olarak yönetebilirsiniz. Bu yöntem en fazla esnekliği sunar — hataları günlüğe kaydedebilir, dinamik içerik görüntüleyebilir veya koşullu yönlendirme mantığı uygulayabilirsiniz.
Adım 1: Özel 404 PHP Dosyası Oluşturun
Kök dizininizde 404.php adlı bir dosya oluşturun ve aşağıdaki içeriği ekleyin:
<?php
// Send a 301 permanent redirect header
header("HTTP/1.1 301 Moved Permanently");
header("Location: /new-page.php");
exit();
?>Hemen yönlendirmek yerine yardımcı bir sayfa gösteren daha kullanıcı dostu bir yaklaşım için:
<?php
http_response_code(404);
// Log the 404 for monitoring
error_log("404 Error: " . $_SERVER['REQUEST_URI']);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Page Not Found</title>
</head>
<body>
<h1>Oops! Page Not Found</h1>
<p>The page you're looking for doesn't exist. <a href="/">Return to Homepage</a></p>
</body>
</html>Adım 2: Sunucunuzu Özel PHP Dosyasına Yönlendirin
Apache için, .htaccess dosyanıza ekleyin:
ErrorDocument 404 /404.phpNginx için, sunucu bloğunuza ekleyin:
error_page 404 /404.php;
location = /404.php {
internal;
}internal yönergesi, hata sayfasının yalnızca Nginx tarafından dahili olarak erişilebildiğini sağlar — kullanıcılar tarafından URL yazarak doğrudan erişilemez.
Yöntem 4: WordPress’e Özgü 404 Yönlendirme Çözümleri
Siteniz WordPress üzerinde çalışıyorsa, sunucu düzeyinde yapılandırmanın ötesinde ek seçenekleriniz vardır.
Eklenti Kullanma
Redirection, Rank Math SEO veya Yoast SEO gibi eklentiler yerleşik 404 izleme ve yönlendirme yönetimi içerir. Bu araçlar şunları yapmanıza izin verir:
- Panoda tüm 404 hatalarını görüntüleyin
- Sunucu dosyalarına dokunmadan yönlendirmeler ayarlayın
- Mevcut benzer URL’lere dayalı olarak otomatik olarak yönlendirmeler önerilmesi
functions.php Düzenleme
Geliştiriciler için, yönlendirme mantığını doğrudan temanızın functions.php dosyasına ekleyebilirsiniz:
function custom_404_redirect() {
if ( is_404() ) {
wp_redirect( home_url(), 301 );
exit();
}
}
add_action( 'template_redirect', 'custom_404_redirect' );Bu, tüm 404 hatalarını 301 durumu ile ana sayfaya yönlendirir.
404 Yönlendirmelerinizi Test Etme
Herhangi bir yönlendirme yöntemi uyguladıktan sonra, kapsamlı test gereklidir. Her şeyin doğru çalıştığını doğrulamanın yolu aşağıda verilmiştir:
Manuel Tarayıcı Testi
- Sitenizde var olmadığını bildiğiniz bir URL’ye gidin (örneğin,
https://yourdomain.com/this-page-does-not-exist) - Doğru hedefe yönlendirildiğinizi onaylayın
- Tarayıcının adres çubuğunu kontrol ederek URL’nin güncellendiğinden emin olun
HTTP Durum Doğrulaması için curl Kullanma
curl -I https://yourdomain.com/non-existent-pageYanıt başlıklarında HTTP/1.1 301 Moved Permanently arayın, ardından hedef URL’nize işaret eden Location: başlığını kontrol edin.
Çevrimiçi Araçlar
Şu gibi araçları kullanın:
- Google Search Console — sitenizi tararken Google’ın karşılaştığı 404 hatalarını tanımlar
- Screaming Frog SEO Spider — sitenizi tarar ve bozuk bağlantıları işaretler
- Redirect Checker (redirect-checker.org) — yönlendirme zincirlerini ve son hedefleri doğrular
404 Hatalarını Yönetmek için En İyi Uygulamalar
1. Yardımcı Bir Özel 404 Sayfası Tasarlayın
Çoğu 404 hatasını yönlendirseniz bile, bazıları kaçınılmaz olarak ortaya çıkacaktır. İyi tasarlanmış bir özel 404 sayfası şunları içermelidir:
- Sayfanın bulunamadığını açıklayan net, dostça bir mesaj
- Kullanıcıların aradıklarını bulabilmeleri için bir arama çubuğu
- En popüler sayfalarınıza veya kategorilerinize bağlantılar
- Sitenizin ana navigasyon menüsü
- Ana sayfaya geri dönüş bağlantısı
2. 301 Yönlendirmelerini Kullanın — 302 Değil
Ölü sayfalar için her zaman 301 (kalıcı) yönlendirmeler kullanın. 302 (geçici) yönlendirmesi SEO değerini iletmez ve arama motorlarına orijinal URL’nin geri dönebileceğini söyler. 302’yi yalnızca bir sayfa gerçekten geçici olarak kullanılamadığında kullanın.
3. Yönlendirme Zincirlerinden Kaçının
Yönlendirme zinciri, URL A’nın URL B’ye yönlendirilmesi ve URL B’nin URL C’ye yönlendirilmesi durumunda oluşur. Zincirdeki her adım bağlantı öz sermayesini azaltır ve sayfa yükleme sürelerini yavaşlatır. Her zaman doğrudan son hedef URL’ye yönlendirin.
4. 404 Hatalarını Sürekli İzleyin
404 hatalar tek seferlik bir düzeltme değildir. Yeni bozuk bağlantılar sürekli ortaya çıkar — dış siteler URL’lerini değiştirdiklerinde, kendi içerik güncellemelerinizden ve kullanıcı yazım hatalarından. Şunlarla devam eden izleme ayarlayın:
- Google Search Console (Kapsam raporu)
- Ahrefs veya SEMrush site denetim araçları
- Sunucu erişim günlüğü analizi
5. Yüksek Değerli 404 Sayfalarına Öncelik Verin
Tüm 404 hatalar eşit derecede önemli değildir. Önce şunları yapan sayfalara odaklanın:
- Diğer web sitelerinden gelen geri bağlantıları vardır (Ahrefs veya Moz ile kontrol edin)
- Önemli organik arama trafiği alırlar (Google Search Console’da görülebilir)
- Sitenizin diğer sayfalarından dahili olarak bağlantılandırılmıştır
6. SSL’i Etkin Tutun
HTTPS sitesinde 404 yönlendirmesi geçerli bir SSL sertifikası gerektirir. Sertifikanızın süresi dolmuşsa, kullanıcılar yönlendirmeyi görmeden önce bir güvenlik uyarısıyla karşılaşacaktır. SSL’inizin her zaman güncel olduğundan emin olun — AlexHost, sitenizi güvenli tutmak ve hem kullanıcılar hem de arama motorları tarafından güvenilir olmak için SSL Sertifikaları sunmaktadır.
404 Hataları ve SEO: Bilmeniz Gerekenler
404 hatalarının SEO’nuz üzerindeki etkisini anlamak, düzeltmeleri doğru şekilde önceliklendirmenize yardımcı olur.
404 Hataları Sıralamalarına Doğrudan Zarar Verir mi?
Düşük trafikli, bağlantısız bir sayfadaki tek bir 404 hatası sıralamalarınıza anlamlı bir şekilde zarar vermez. Ancak yaygın 404 hataları — özellikle geri bağlantıları veya önemli iç bağlantı öz sermayesi olan sayfalar — şunları yapabilir:
- Tarama bütçesini boşa harcayarak Google’ın önemli sayfalarınızın daha azını taramasına neden olur
- Ölü URL’lere işaret eden harici geri bağlantılardan bağlantı öz sermayesi kaybına neden olur
- Kullanıcılar sık sık hata sayfalarına inerse hızlı çıkış oranı sinyallerini artırır
- Zaman içinde dizine alınmış sayfaların Google’ın dizininden kaldırılmasına neden olur
Yumuşak 404’ler Sert 404’lerden Daha Kötüdür
Bir yumuşak 404, bir sayfa 200 OK durum kodunu döndürdüğünde ancak “sayfa bulunamadı” mesajı gösterdiğinde oluşur. Bu, uygun bir 404’ten daha zararlıdır çünkü arama motorları boş veya yararsız sayfayı dizine alabilir. Her zaman hata sayfalarınızın doğru HTTP durum kodunu döndürdüğünden emin olun.
Kayıp Bağlantı Öz Sermayesini Geri Kazanın
Geri bağlantıları olan 404 sayfalarını tanımladığınızda, bunları en uygun canlı sayfaya yönlendirmek, gerçekleştirebileceğiniz en yüksek ROI’li SEO görevlerinden biridir. Esasen daha önce kayıp olan bağlantı öz sermayesini geri kazanıyorsunuz.
Güvenilir Yönlendirme Yönetimi için Doğru Barındırma Ortamını Seçmek
404 yönlendirmelerini etkili bir şekilde uygulama ve yönetme yeteneğiniz, barındırma ortamınıza büyük ölçüde bağlıdır. Paylaşılan barındırma planları sunucu yapılandırma dosyalarına erişimi kısıtlayabilir veya .htaccess yeteneklerini sınırlayabilir.
Sunucu yapılandırmanız üzerinde tam kontrol için — özel Nginx kurulumları, PHP yapılandırmaları ve sınırsız .htaccess erişimi dahil — daha yetenekli bir barındırma çözümüne yükseltmeyi düşünün:
- VPS Barındırma — Tam root erişimi, işletim sistemi seçin, Apache veya Nginx’i tam olarak ihtiyacınız şekilde yapılandırın
- Özel Sunucular — Yüksek trafikli siteler için maksimum performans ve tam sunucu kontrolü
- Paylaşılan Web Barındırma — Standart
.htaccessyönlendirme ihtiyaçları olan daha küçük siteler için ideal - VPS Kontrol Panelleri — Komut satırı uzmanlığı olmadan sunucu yapılandırmalarını sezgisel bir GUI aracılığıyla yönetin
Doğru altyapıya sahip olmak, yönlendirme kurallarının anında uygulanması, sunucu yeniden yüklemelerinin sorunsuz olması ve kritik site sorunlarını çözerken barındırma kısıtlamaları tarafından hiçbir zaman engellenmemeniz anlamına gelir.
Sonuç
404 hatalarını yönlendirmek sadece teknik bir bakım görevi değildir — yüksek performanslı, kullanıcı dostu ve SEO açısından optimize edilmiş bir web sitesini sürdürmenin temel bir parçasıdır. Her bozuk bağlantı, potansiyel olarak kaybedilen bir ziyaretçi, boşa harcanan bir backlink ve arama motorlarına gönderilen olumsuz bir sinyaldir.
Bu kılavuzda ele alınan yöntemleri uygulayarak — Apache’nin .htaccess, Nginx sunucu bloğu yapılandırması veya PHP tabanlı yönlendirme betikleri aracılığıyla — sitenizde yer alan ölü uçları sistematik olarak ortadan kaldırabilir ve hem kullanıcıları hem de arama motoru tarayıcılarını doğru içeriğe yönlendirebilirsiniz.
Temel çıkarımlar:
- Kalıcı olarak taşınan veya silinen sayfalar için 301 yönlendirmelerini kullanın
- En iyi performans için yönlendirmeleri sunucu düzeyinde (Apache veya Nginx) yapılandırın
- Her yönlendirmeyi tarayıcı kontrolleri ve HTTP başlığı inceleme araçlarıyla test edin
- Google Search Console ve SEO denetim araçlarıyla sürekli izleyin
- Kaçan hatalar için bir güvenlik ağı olarak yardımcı bir özel 404 sayfası tasarlayın
- Backlinki olan 404 sayfalarını maksimum SEO kurtarması için yönlendirmeyi önceliklendirin
En yüksek trafikli ve en çok bağlantılı bozuk sayfalardan başlayın, ardından yeni 404 hatalarını ortaya çıktıkça yakalamak için sistematik bir süreç oluşturun. Kullanıcılarınız — ve arama sıralamanız — buna minnettar olacaktır.
tasarruf edin