HTTP 502 Bad Gateway
Aracının şikayeti: bir proxy veya CDN gerçek sunucuya sordu ve karşılığında saçmalık — ya da hiçbir şey — almadı.
HTTP 502 ne anlama gelir
HTTP 502 Bad Gateway, isteğinizi bir üst akış sunucusuna ileten ve geçersiz bir yanıt alan bir aracıdan — nginx, bir yük dengeleyici, Cloudflare — gelir: reddedilen bir bağlantı, yanıt ortasında bir çökme veya HTTP olarak ayrıştırılamayan baytlar.
Adı geçen suçlu neredeyse hiçbir zaman proxy'nin kendisi değildir; arkasındaki uygulama sunucusunun kapalı, aşırı yüklü veya ulaşılamaz olmasıdır.
502 hatalarının yaygın nedenleri
- Uygulama sunucusu (PHP-FPM, Node, gunicorn vb.) çöktü veya çalışmıyor.
- Proxy yanlış port/soket'i gösteriyor, ya da bir güvenlik duvarı üst akış bağlantısını engelliyor.
- Üst akış yanıtı arabellekleri aştı veya aktarım ortasında zaman aşımına uğradı.
- Bir dağıtım, trafik akarken arka uçları yeniden başlattı.
- Cloudflare gibi CDN'lerle: kenar sorunsuzken kaynak sunucu kapalı.
Bir ziyaretçi olarak nasıl düzeltilir
- Bir dakika sonra yeniden yükleyin — dağıtımlar sırasındaki 502'ler kendi kendine çözülür.
- Sürekli oluyorsa hizmetin durum sayfasını kontrol edin.
Bir geliştirici olarak nasıl düzeltilir
- Üst akış sürecinin canlı olup olmadığını ve proxy'nin beklediği adreste dinleyip dinlemediğini kontrol edin.
- Proxy'nin hata günlüğünü okuyun — nginx tam olarak nedenini söyler (connect() başarısız oldu, upstream prematurely closed vb.).
- Proxy ve uygulama arasındaki portları, unix soket yollarını ve güvenlik duvarı kurallarını doğrulayın.
- Yük dengeleyicinin ölü örneklere yönlendirmeyi durdurması için sağlık kontrolleri ekleyin.
Örnek yanıt
HTTP/1.1 502 Bad Gateway Server: nginx Content-Type: text/html <html><body><h1>502 Bad Gateway</h1></body></html>
SSS
502 ile 504 arasındaki fark nedir?
502, üst akışın geçersiz bir şeyle yanıt verdiği (veya bağlantıyı reddettiği) anlamına gelir; 504 ise zaman aşımı içinde hiç yanıt vermediği anlamına gelir.
Cloudflare neden 502 gösteriyor?
Cloudflare'ın kenar sunucusu, kaynak sunucunuzdan geçerli bir yanıt alamadı — kaynak kapalı, ulaşılamaz veya hatalı biçimlendirilmiş yanıtlar döndürüyor.
Bir 502 geçici midir?
Genellikle evet — dağıtımlar ve yeniden başlatmalar kısa süreli 502'lere neden olur. Kalıcı 502'ler, arka ucun gerçekten kapalı veya yanlış yapılandırılmış olduğu anlamına gelir.