502
Bad Gateway
HTTP durum kodu 502'ün belirtimi
Kaynak / Alıntı: 502 Bad Gateway HTTP durum kodu RFC7231 bölümünün 6.6.3 kısmında belirtilmiştir.
HTTP protokolü
PHP ile 502 durum kodu nasıl atılır?
Bir web sayfasında HTTP durum kodu 502'ü atmak için PHP işlevi http_response_code kullanılabilir. Sözdizimi aşağıdaki gibidir: http_response_code(502) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
502 HTTP Durum Kodunu Test Etme
HTTP durum kodunu (bu durumda 502 Bad Gateway) 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:
URL: https://http-statuscode.com/errorCodeExample.php?code=502
Durum: 502 Bad Gateway
Şunlar: Network
IP adresi: XX.XX.XX.XX
502 durum koduyla ilgili sorunu nasıl çözebilirim?
HTTP durum kodu 502 Bad Gateway normalde, istemci (örneğin bir web tarayıcısı) ile istemcinin iletişim kurmak istediği sunucu arasında aracı görevi gören bir proxy sunucusu tarafından döndürülür. Hata, proxy sunucusu bir yukarı akış sunucusundan geçersiz bir yanıt aldığında ortaya çıkar. Bu hatanın birkaç olası nedeni vardır ve aşağıda en olası sorunlardan bazılarını tartışacağım ve bunları nasıl düzeltebileceğinizi açıklayacağım.
- Aşırı yüklenmiş veya erişilemeyen yukarı akış sunucusu: HTTP durum kodu 502 Bad Gateway'nin yaygın bir nedeni, proxy sunucusunun bağlandığı yukarı akış sunucusunun aşırı yüklenmiş veya ulaşılamaz olmasıdır. Bu durumda, yukarı akış sunucusunun düzgün çalıştığından ve istekleri işlemek için yeterli kaynağa sahip olduğundan emin olmalısınız. Herhangi bir sorun olup olmadığını görmek için sunucu günlüklerini ve ağ bağlantılarını kontrol edin. Yukarı akış sunucusu aşırı yüklüyse, sorunu çözmek için yükü birden fazla sunucuya dağıtabilir veya ek kaynaklar ekleyebilirsiniz.
- Ağ sorunları: Bir diğer olası sorun, proxy sunucusu ile yukarı akış sunucusu arasındaki ağ sorunlarıdır. Bu, dengesiz bir bağlantı, bir DNS sorunu veya iletişimi engelleyen bir güvenlik duvarı ayarı olabilir. Gerekli tüm bağlantı noktalarının açık ve bağlantının kararlı olduğundan emin olmak için ağ ayarlarını kontrol edin. Ayrıca, yukarı akış sunucusunun doğru şekilde çözümlendiğinden emin olmak için DNS çözümlemesini test edin. Bazı durumlarda, ağ sorunlarını çözmek için proxy sunucusunu yeniden başlatmak da yararlı olabilir.
- Yanlış yapılandırılmış proxy sunucusu: Proxy sunucusunun yanlış yapılandırılması da HTTP durum kodu 502 Bad Gateway'ye yol açabilir. Proxy ayarlarının doğru olduğundan ve proxy sunucusunun istekleri yukarı akış sunucusuna düzgün şekilde ilettiğinden emin olun. Doğru olduklarından emin olmak için proxy yapılandırma dosyalarını ve ayarlarını kontrol edin. Bazı durumlarda, bilinen sorunları gidermek için proxy sunucusunu güncellemek veya farklı bir sürüme geçmek de yararlı olabilir.
- Yukarı akış sunucusunda hatalı uygulama: Yukarı akış sunucusunda HTTP durum kodu 502 Bad Gateway'ye neden olan hatalı bir uygulama veya yapılandırma olması da mümkündür. Olası hataları veya istisnaları aramak için uygulama ve sunucu günlüklerini kontrol edin. Bilinen sorunları gidermek için uygulamayı güncelleyin veya onarın. Sorunu analiz etmek ve çözmek için bir geliştirici veya sistem yöneticisiyle birlikte çalışmak da yararlı olabilir.
- Proxy sunucusunun kendisiyle ilgili sorunlar: Son olarak, HTTP durum kodu 502 Bad Gateway proxy sunucusunun kendisiyle ilgili sorunlardan da kaynaklanabilir. Bunun nedeni yazılım hataları, eksik güncellemeler veya donanım sorunları olabilir. Hata mesajları veya uyarılar için proxy sunucu günlüklerini kontrol edin. Proxy sunucusunu en son sürüme güncelleyin ve bilinen sorunları kontrol edin. Bazı durumlarda, sorunu çözmek için proxy sunucusunu yeniden yüklemek veya alternatif bir yazılım çözümüne geçmek gerekebilir.
HTTP durum kodu 502 Bad Gateway'yi çözmenin büyük ölçüde özel ortamınıza ve yapılandırmanıza bağlı olduğunu unutmamak önemlidir. Sorunu teşhis etmek ve düzeltmek için deneyimli bir geliştirici veya sistem yöneticisi ile çalışmak yararlı olabilir.
.Durum kodu 502 için kendi hata sayfanızı nasıl oluşturursunuz?
Apache Webserver
"Apache" web sunucusu internetteki en yaygın web sunucularından biridir. "Apache" de kendi 502 Bad Gateway hata sayfanızı oluşturmak için aşağıdaki dosyada aşağıdaki değişiklik yapılmalıdır.
NGINX Webserver
"Apache" web sunucusuna benzer şekilde "NGINX" de internette yaygın olarak kullanılmaktadır. "NGINX" de kendi 502 Bad Gateway hata sayfanızı oluşturmak için aşağıdaki dosyada aşağıdaki değişiklik yapılmalıdır.
location = /502.html {
root /usr/share/nginx/html;
internal;
}
502 durum kodunun tarayıcı uyumluluğu
Chrome | no data |
Edge | no data |
Firefox | no data |
Opera | no data |
Safari | no data |
Chrome Android | no data |
Firefox for Android | no data |
Opera Android | no data |
Safari on iOS | no data |
Internet | no data |
WebView Android | no data |
Programlama dillerinde sabitler
HttpStatusCode.BadGateway
http.StatusBadGateway
Response::HTTP_BAD_GATEWAY
httplib.BAD_GATEWAY
http.client.BAD_GATEWAY
http.HTTPStatus.BAD_GATEWAY
:bad_gateway
502 Durum kodunun alt durum kodları
502.1 | CGI application timeout HTTP IIS, Resmi olmayan |
502.2 | Bad gateway: Premature Exit HTTP IIS, Resmi olmayan |
502.3 | Bad Gateway: Forwarder Connection Error (ARR) HTP IIS, Resmi olmayan |
502.4 | Bad Gateway: No Server (ARR) HTP IIS, Resmi olmayan |
502.5 | WebSocket failure (ARR) HTTP IIS, Resmi olmayan |
502.6 | Forwarded request failure (ARR) HTTP IIS, Resmi olmayan |
502.7 | Execute request failure (ARR) HTTP IIS, Resmi olmayan |