2013-09-04 45 views
5

Ubuntu 12.04LTS çalışıyor. Web sunucum Tomcat 7.0.42 ve HAProxy'yi proxy sunucu olarak kullanıyorum. Uygulamam, websockets kullanan bir sunucu uygulamasıdır.502 Bozuk Ağ Geçidi HAproxy

Sayfamı istediğimde, bazı kaynaklarda "502 Bozuk Ağ Geçidi" hatası alıyorum, ancak bazılarında. Bunu takip edildiği, benim HAProxy yapılandırma ile ilgili bir şey olduğunu düşünüyorum:

Ben 502 hatayı önlemek için değiştirmek Neler var
global 
    maxconn  4096 # Total Max Connections. This is dependent on ulimit 
    nbproc  1 

defaults 
    mode  http 
    option http-server-close 
    option httpclose 
# option redispatch 
    no option checkcache # test against 502 error 

frontend all 0.0.0.0:80 
    timeout client 86400000 
    default_backend www_backend 
    acl is_websocket hdr(Upgrade) -i WebSocket 
    acl is_websocket hdr_beg(Host) -i ws 

    use_backend socket_backend if is_websocket 

    backend www_backend 
     balance roundrobin 
     option forwardfor # This sets X-Forwarded-For 
     timeout server 30000 
     timeout connect 4000 
     server apiserver localhost:8080 weight 1 maxconn 1024 check 

    backend socket_backend 
     balance roundrobin 
     option forwardfor # This sets X-Forwarded-For 
     timeout queue 5000 
     timeout server 86400000 
     timeout connect 86400000 
     server apiserver localhost:8080 weight 1 maxconn 1024 check 

?

cevap

2

İlk olarak, haproxy günlüğünü etkinleştirin. Size sadece 502'yi neden verdiğini söyleyecektir. Benim tahminim, "localhost: 8080" arka ucunun 4000ms içinde "timeout connect" ile yetişememesi ya da bir bağlantı sağlayamaması.

1

HAProxy'de varsayılan sınırların bir kısmını aşmış olabilirsiniz. Küresel bölümüne aşağıdaki eklemeyi deneyin:

tune.maxrewrite 4096 
tune.http.maxhdr 202 
+0

Önerilmemesi yapılandırma değişiklikleri OP'ın konuyu ele neden daha açar mısınız? – Castaglia

+0

Lütfen cevaba daha fazla ayrıntı ekleyin. Cevap mevcut formda silinebilir. – Jayan

İlgili konular