2017-04-12 98 views
1

我有HAproxy位於AWS ELB後面。只要我刪除ELB,我可以得到自定義錯誤頁面。但是,在Haproxy前面的ELB中,我得到HTTP/1.1 504 GATEWAY_TIMEOUT Content-Length:0連接:保持活動狀態。ELB後面的Haproxy

有誰能告訴我發生了什麼事嗎?由於

錯誤文件:

HTTP/1.0 403 Forbidden 
Cache-Control: no-cache 
Connection: close 
Content-Type: text/html 

<html><body><h1>403 Forbidden</h1> 
Request forbidden by administrative rules. 
</body></html> 
+0

ELB是否顯示實例健康? HAProxy會記錄失敗請求的任何內容嗎? –

+0

是的,ELB顯示實例是健康的。 HAProxy會記錄失敗請求的任何內容嗎?否 –

回答

2

我和一個同事剛剛有同樣的問題。收到超時後,並閱讀這種類型的http代碼的亞馬遜定義,我得到了我的頭我的錯誤文件是「格式不正確」。經過很多次嘗試之後,我們發現錯誤文件「header」中的CL-RF(新行)有一些有趣的地方。

我從他們的git(https://raw.githubusercontent.com/haproxy/haproxy/60220bbc4b6b3c4279d3c96232cf2c2461ecc55e/examples/errorfiles/503.http)下載了HaProxy默認文件,當它在vi(m)上打開時,它在標題上有一個^ M(CR)標誌(正文前的所有內容,包括將它們分開的空行) 。如果你不能下載它,你可以在寫字板或類似的東西(DOS)上寫下它(只是最上面的部分),然後將它發送給你的UNIX機器。

所以我寫了我的文件使用他們的頭,現在一切正常。 乾杯。

+0

非常感謝費爾南多。它解決了我的問題... –

+0

@FadhelGhorbel然後請點擊勾號接受答案 – Marged