404

Not Found

Resmi Alt durum kodları
Web sunucusu istenen kaynağı bulamadı

404 durum kodunun genel açıklaması

404 Not Found durum kodu ile sunucu belirtilen URL altında bir kaynak bulamadı. Bu mesaj, teknik olmayan kullanıcılar arasında bile en çok bilinen hata mesajıdır, çünkü büyük web siteleri bile katı bağlantı yapılarına sahiptir ve 404 Not Found hata mesajı daha sık atılır.

HTTP durum kodu 404'ün belirtimi

404 Not Found durum kodu, kaynak sunucunun hedef kaynak için geçerli bir temsil bulamadığını veya bir temsilin varlığını ifşa etmek istemediğini gösterir. 404 Not Found durum kodu, bu eksik temsilin geçici mi yoksa kalıcı mı olduğunu belirtmez; kaynak sunucunun, muhtemelen yapılandırılabilir bazı yollarla, durumun kalıcı olabileceğini bilmesi durumunda 410 (Gitti) durum kodu 404 Not Found'e tercih edilir. 404 Not Found yanıtı varsayılan olarak önbelleğe alınabilir, yani yöntem tanımı veya açık önbellek kontrolleri aksini belirtmediği sürece (bkz. [RFC7234] bölüm 4.2.2).

Kaynak / Alıntı: 404 Not Found HTTP durum kodu RFC7231 bölümünün 6.5.4. kısmında belirtilmiştir.

PHP ile 404 durum kodu nasıl atılır?

Bir web sayfasında HTTP durum kodu 404'ü atmak için PHP işlevi http_response_code kullanılabilir. Sözdizimi aşağıdaki gibidir: http_response_code(404) (PHP 5 >= 5.4.0, PHP 7, PHP 8)

404 HTTP Durum Kodunu Test Etme

HTTP durum kodunu (bu durumda 404 Not Found) ve istemci tarafındaki diğer bilgileri görüntüleyebilmek için geliştirme konsolu F12 ile açılmalıdır. Ardından "Ağ" sekmesine gidin. Artık sayfa açılabilir, web sitesi (örnek index.php) ağ sekmesinde görünür olmalıdır. Bu seçilmeli ve ardından Herder bölümü seçilmelidir. Kullanıcı daha sonra aşağıdaki sonucu görecektir:

Durum kodu 404 Not Found
Genel Bakış
URL: https://http-statuscode.com/errorCodeExample.php?code=404
Durum: 404 Not Found
Şunlar: Network
IP adresi: XX.XX.XX.XX
Durum kodu 404 Not Found

404 durum koduyla ilgili sorunu nasıl çözebilirim?

404 Not Found durum kodu çeşitli nedenlerle ortaya çıkabilir. Bazıları önemsiz, bazıları ise daha karmaşıktır. En olası neden, URL'nin yanlış yazılmış olması veya dahili bir sayfaya bağlantının yanlış ayarlanmış olmasıdır. Diğer bir olasılık ise, bağlantılı sayfanın web sunucusundan silinmiş olması ve 410 (Gitti) gibi bir takip durum kodunun ayarlanmamış olmasıdır.

Ancak biraz daha karmaşık bir hata modeli de olabilir. URL'nin yanlış yazılmadığından veya kaynağın silinmediğinden emin olunursa, "htaccess" dosyasından yapılan bir yönlendirme de hatalı olabilir. Hatalı yönlendirmeler genellikle web araçları ile tespit edilebilir.

Son bir olasılık olarak, bir önbellekleme sorunu da düşünülebilir. Ya sorun sunucu tarafında zaten çözülmüştür, ancak tarayıcınızın önbelleği sayfayı yeniden yüklemiyor, yerel bellekten yüklüyor ya da web sunucusu güncel sürümü de yüklemiyor. Bu durumda, önbellek hem istemci tarafında hem de sunucu tarafında temizlenmelidir.

Durum kodu 404 için kendi hata sayfanızı nasıl oluşturursunuz?

Kendi 404 Not Found hata sayfanızı oluşturmak hem "Apache" hem de "NGINX" web sunucuları ile nispeten kolaydır.

Apache Webserver

"Apache" web sunucusu internetteki en yaygın web sunucularından biridir. "Apache" de kendi 404 Not Found hata sayfanızı oluşturmak için aşağıdaki dosyada aşağıdaki değişiklik yapılmalıdır.

File: .htaccess
ErrorDocument 404 /errors/404.html

NGINX Webserver

"Apache" web sunucusuna benzer şekilde "NGINX" de internette yaygın olarak kullanılmaktadır. "NGINX" de kendi 404 Not Found hata sayfanızı oluşturmak için aşağıdaki dosyada aşağıdaki değişiklik yapılmalıdır.

File: sites-enabled/default
error_page 404 /404.html;
location = /404.html {
    root /usr/share/nginx/html;
    internal;
}

404 durum kodunun tarayıcı uyumluluğu

Chrome Yes
Edge Yes
Firefox Yes
Opera Yes
Safari Yes
Chrome Android Yes
Firefox for Android Yes
Opera Android Yes
Safari on iOS Yes
Internet Yes
WebView Android Yes

404 durum kodunun ne gibi SEO etkileri vardır?

Arama motoru optimizasyonu (SEO) dünyasında 404 Not Found "Not Found" durum kodu basit bir hata mesajından çok daha fazlasıdır. Arama motorlarının bir web sitesini algılama ve değerlendirme şekli üzerinde gerçek ve somut etkileri vardır.

Bir kullanıcı veya arama motoru tarayıcısı olmayan bir sayfaya erişmeye çalıştığında ve bu nedenle 404 Not Found hatası döndürdüğünde, arama motorları bunu var olmayan bir sayfa olarak yorumlar. Arada sırada yapılan 404 Not Found hatalarının arama motoru sıralamaları üzerinde ciddi bir etkisi olması gerekmez. Ancak, bu tür hataların birikmesi, arama motorlarına web sitesinin bakımının iyi yapılmadığı veya güncellenmediği sinyalini verebilir.

Sık sık 404 Not Found hatası oluşması, arama motorları tarafından zayıf web sitesi yapısı veya bakımının bir göstergesi olarak algılanabilir. Bu da arama motorunun web sitesine duyduğu güven üzerinde olumsuz bir etkiye sahip olabilir. Ve SEO dünyasında güven her şeydir. Arama motorlarının güvendiği bir web sitesi, arama sonuçlarında daha iyi sıralanma eğilimindedir.

Ayrıca, daha önce de belirtildiği gibi, her web sitesinin bir tarama bütçesi vardır. Bu, bir arama motoru tarayıcısının belirli bir süre içinde ziyaret edeceği sayfa sayısını ifade eder. Çok fazla 404 Not Found hatası, bu bütçenin önemli bir kısmının var olmayan sayfalarda boşa harcanmasına neden olabilir. Bu, yeni veya güncellenmiş içeriğin arama motorları tarafından keşfedilmesinin ve dizine eklenmesinin daha uzun sürebileceği anlamına gelir.

Bir diğer önemli konu da 404 Not Found hataları nedeniyle backlink kaybıdır. Geri bağlantılar çok önemli bir sıralama faktörüdür ve harici bir sayfa 404 Not Found hatası veren bir URL'ye bağlantı veriyorsa, bu bağlantı artık arama motorları tarafından olumlu bir sıralama faktörü olarak değerlendirilmeyecektir.

Özetle, 404 Not Found hataları yüzeyde zararsız görünse de, bir web sitesinin arama motoru sıralaması üzerinde ciddi bir etkiye sahip olabilir. Bu nedenle, web sitesinin arama sonuçlarında mümkün olan en iyi konumunu korumasını sağlamak için bu hataları düzenli olarak izlemek ve düzeltmek bir web yöneticisinin yararınadır.

Programlama dillerinde sabitler

HttpStatusCode.NotFound
http.StatusNotFound
response::HTTP_NOT_FOUND
httplib.NOT_FOUND
http.client.NOT_FOUND
http.HTTPStatus.NOT_FOUND
:not_found

HTTP durum kodu 404 olan "İstemci isteği" ve "Sunucu yanıtı" için örnek

Client request:

GET /missingpage.php HTTP/1.1
Host: www.http-statuscode.com

Server response:

HTTP/1.1 404 Not Found
Content-Type: text/html

<html>
<head><title>404 Not Found</title></head>
<body>
<h1>Not Found</h1>
<p>The requested URL /missingpage.php was not found on this server.</p>
</body>
</html>

404 Durum kodunun alt durum kodları

Alt durum kodları tamamen tekniktir ve asla kullanıcıya gönderilmemelidir. Örneğin, 404.1 durum kodu atılırsa, günlüğe kaydedilebilir, ancak kullanıcıya 404 durum kodu gönderilir.:
404.0 Not found
HTTP IIS, Resmi olmayan
404.1 Site Not Found
HTTP IIS, Resmi olmayan
404.2 ISAPI or CGI restriction.
HTTP IIS, Resmi olmayan
404.3 MIME type restriction.
HTTP IIS, Resmi olmayan
404.4 No handler configured
HTTP IIS, Resmi olmayan
404.5 Denied by request filtering configuration
HTTP IIS, Resmi olmayan
404.6 Verb denied
HTTP IIS, Resmi olmayan
404.7 File extension denied
HTTP IIS, Resmi olmayan
404.8 Hidden namespace
HTTP IIS, Resmi olmayan
404.9 Files attribute hidden
HTTP IIS, Resmi olmayan
404.10 Request header too long
HTTP IIS, Resmi olmayan
404.11 Request contains double escape sequence
HTTP IIS, Resmi olmayan
404.12 Request contains high-bit characters
HTTP IIS, Resmi olmayan
404.13 Content length too large
HTTP IIS, Resmi olmayan
404.14 Request URL too long
HTTP IIS, Resmi olmayan
404.15 Query string too long
HTTP IIS, Resmi olmayan
404.16 DAV request sent to the static file handler
HTTP IIS, Resmi olmayan
404.17 Dynamic content mapped to the static file handler
HTTP IIS, Resmi olmayan
404.18 Querystring sequence denied
HTTP IIS, Resmi olmayan
404.19 Denied by filtering rule
HTP IIS, Resmi olmayan
404.20 Too Many URL Segments
HTTP IIS, Resmi olmayan
404.501 Too many requests from the same client IP; Dynamic IP Restriction Concurrent request rate limit reached
HTTP IIS, Resmi olmayan
404.502 Too many requests from the same client IP; Dynamic IP Restriction Maximum request rate limit reached
HTTP IIS, Resmi olmayan
404.503 the IP address is included in the Deny list of IP Restriction
HTTP ISS, Resmi olmayan
404.504 the host name is included in the Deny list of IP Restriction
HTTP IIS, Resmi olmayan

HTTP durum kodu 404 hakkında eğlenceli memler

Blog Yazıları

HTTP durum kodları: 404 Not Found ve 410 Gone hata mesajlarının ayrıntılı analizi

HTTP durum kodları, web tarayıcıları ve web sunucuları arasındaki iletişimin temelini oluşturan Köprü Metni Aktarım Protokolü'nün (HTTP) önemli bir parçasıdır. Bir HTTP isteğinin ve yanıtının durum...

SEO ve HTTP durum kodları: Kapsamlı bir analiz

Bir web sitesini arama motorları (SEO) için optimize etmek karmaşık bir girişimdir. İyi bir sıralama için genellikle göz ardı edilen ancak çok önemli olan hususlardan biri HTTP durum kodlarıdır. Bu...

Yazar: Tony Brüser
Yazar: Tony Brüser

Tony Brüser, HTTP durum kodlarına meraklı hevesli bir web geliştiricisidir.

LinkedInGitHub