Ana içeriğe geç

Rehberler / HTTP durum kodları açıklandı

1xx bilgilendirme durum kodları

Bir 1xx durum kodu, geçici bir yanıttır: sunucu istemciye isteğin alındığını ve işlemenin devam ettiğini söylüyordur, ve gerçek bir son yanıt henüz gelmemiştir. Henüz hiçbir şey başarılı veya başarısız olmamıştır, bu yüzden 1xx kodları erişim günlüklerinde veya izleme kontrol panellerinde neredeyse hiç görünmez.

Geçici bir yanıt nedir

Diğer her durum ailesi alışverişi bitirir. Bir 200, bir 404 veya bir 502, sunucunun o istek hakkındaki son sözüdür. Bir 1xx farklıdır: sunucu durum satırını ve herhangi bir başlığı gönderir, sonra bağlantıyı açık tutar ve daha sonra ikinci bir yanıt gönderir. RFC 9110, istemcilerin son yanıttan önce bir veya daha fazla 1xx yanıtını okuyabilmesini zorunlu kılar, ve belirli bir 1xx kodunu anlamayan herhangi bir istemcinin onu görmezden gelmesine izin verir.

Geçici yanıt, son yanıt geldiğinde atılır, bu yüzden çoğu araç onu hiç göstermez. Tarayıcınızın ağ paneli, web sunucunuzun erişim günlüğü ve bir izleme kontrolü hepsi son durumu raporlar. Geçici yanıt, aktarım düzeyindeki işini yaptı ve kayboldu.

Karşılaşabileceğiniz 1xx kodları

  • 100 Continue. İstemci, Expect: 100-continue ile istek başlıklarını gönderdi ve büyük bir gövde göndermeden önce durdu. Bir 100, "başlıklar iyi görünüyor, gövdeyi gönder" anlamına gelir. Sunucu isteği zaten reddedecekse, bunun yerine son bir hatayla yanıt verebilir ve istemci yükü yükleyerek asla bant genişliği harcamaz. Bu, sıradan sitelerde faydalı bir iş yapan tek 1xx kodudur; genellikle büyük dosya yüklemelerinin ve curl gibi API istemcilerinin arkasındadır.
  • 101 Switching Protocols. İstemci bir Upgrade başlığıyla protokolü değiştirmeyi istedi ve sunucu kabul etti. Bu, bir WebSocket el sıkışmasının normal, başarılı sonucudur, bu yüzden bir günlükteki 101 genellikle bir olay değil iyi bir işarettir.
  • 102 Processing. Uzun süren istekler için WebDAV spesifikasyonu tarafından tanımlanır, böylece istemci sunucunun takılmadığını bilir. WebDAV dışında nadiren uygulanır ve normal bir web sitesinde onunla karşılaşmanız pek olası değildir.
  • 103 Early Hints. Sunucu, sayfayı oluşturmayı bitirmeden önce erkenden Link başlıkları gönderir, böylece tarayıcı HTML hala üretilirken stil sayfalarını, yazı tiplerini veya betikleri önceden yüklemeye başlayabilir. Bu bir hata sinyali değil bir performans özelliğidir, ve normalde onu CDN'de veya kaynakta bilerek açarsınız.

Bir 1xx neden düzeltilecek bir şey değildir

Tek başına bir 1xx hiçbir kusur taşımaz. Bir sayfanın 404 döndürebildiği şekilde "100 döndüren" veya "101 döndüren" bir sayfa diye bir şey yoktur. Bir sorununuz varsa ve alışverişin bir yerinde bir 1xx varsa, ilginç olan bilgi her zaman onu izleyen son durum kodudur, veya hiç son bir yanıtın gelmediği gerçeğidir.

1xx'e yakın gerçek arıza modları, 1xx'in kendisi olarak değil bir donma veya son bir hata olarak görünür:

  • Geçici yanıtları iletmeyen eski bir proksi veya yük dengeleyici, bu yüzden 100 Continue bekleyen bir istemci kendi zaman aşımı tetiklenene kadar takılır.
  • Uygulamanın önündeki bir proksinin Upgrade ve Connection başlıklarını çıkarması yüzünden asla bir 101'e ulaşmayan bir WebSocket yükseltmesi. Bağlantı daha sonra geri düşer veya tamamen başarısız olur.
  • Artık var olmayan kaynaklara bağlantılarla gönderilen erken ipuçları, sayfayı bozmadan istekleri boşa harcar.

Bir 1xx yanıtını kendiniz nasıl görürsünüz

  1. Ayrıntılı bir istemci kullanın. Sıradan curl -I yalnızca son yanıt başlıklarını gösterir, bu yüzden bunun yerine tam alışverişi isteyin:
    curl -v -H "Expect: 100-continue" --data-binary @big.bin https://example.com/upload
    İşbirliği yapan bir sunucu, gövde gitmeden önce HTTP/1.1 100 Continue ile yanıt verir, ve sonra son 2xx veya 4xx.
  2. Bir WebSocket yolu için, el sıkışmanın HTTP/1.1 101 Switching Protocols'a ulaştığını kontrol edin. Ulaşmıyorsa, önce proksi katmanına bakın: yükseltme başlıkları saf saf'tır (hop-by-hop), ve birçok yaygın ters proksi yapılandırması onları varsayılan olarak düşürür.
  3. Erken ipuçları için, sayfayı isteyin ve son yanıttan önce bir 103 bloğu arayın. Her aracı onu iletmez, bu yüzden eksik bir 103 her zaman kaynağın bir tane göndermediği anlamına gelmez.
  4. Büyük bir yükleme hiç yanıt vermeden donarsa, Expect başlığı olmadan yeniden deneyin. Yeniden deneme başarılı olursa, sizinle kaynak arasındaki bir şey geçici yanıtları yutuyordur.

Göremediğiniz bir alışverişi izlemek

1xx kodları hiçbir zaman bir günlüğe veya kontrol paneline ulaşmadığından, izlediğiniz şey son yanıt ve gelmesinin ne kadar sürdüğüdür. Geçici bir yanıtta takılı kalan bir yükleme yolu, dışarıdan bakıldığında tam olarak yavaş veya zaman aşımına uğrayan bir uç nokta gibi görünür, ve dış bir kontrol bunu hemen görür. HostTracker kontrolleri 158 şehirdeki 300'den fazla kontrol noktasından çalıştırır, bu yüzden belirli bir ağ yolunun arkasında donan bir istek gerçek bir kesintiden ayırt edilebilir. Son durumu ve yanıt süresini görmek için bir URL'yi HTTP kontrolü aracından geçirin. 2xx başarı kodları ve 3xx yönlendirme kodları rehberleri, alışverişi gerçekten bitiren yanıtları kapsar.

Şimdi kontrol edin

Ücretsiz kontrolü kendi sitenizde çalıştırın - hesap gerekmez.

HTTP check

Bunu sürekli izleyin

Bir sorun çıktığı anda haberdar olun: HostTracker 300’den fazla konumdan kontrol eder ve size e-posta, SMS, Slack, Telegram ve daha fazlasıyla bildirim gönderir.

HostTracker özellikleri

Bu bölümde daha fazlası: HTTP durum kodları açıklandı