2014-12-02 126 views
5

我在啓用cloudflare時使用HTTP POST時遇到問題。 它保持返回524超時。Cloudflare HTTP POST 524使用node.js + express超時

Failed to load resource: the server responded with a status of 524 (Origin Time-out) 

但是,當我禁用cloudflare,HTTP POST工作正常。

任何想法可能會導致這種情況?

UPDATE

我使用AJAX POST,這是否有任何與阿賈克斯?

謝謝。

+1

你有沒有找到解決這個?我有一個非常類似的問題 – 2016-02-10 19:06:27

+0

在這種情況下該怎麼做,你有沒有找到任何解決方案? – 2017-11-11 02:23:12

回答

0

一般原因爲CloudFlare 524 error

支持應該能夠提供更詳細的疑難解答。

+0

是的,但我沒有做任何漫長的過程,它只是一個簡單的訂閱框。正如我之前提到的,如果我禁用了cloudflare,使用AJAX的POST方法可以正常工作 – hrusli 2014-12-03 01:05:35

+0

該過程需要多長時間?如果超過30/60秒,則必須繞過帶有子域的cloudflare網絡。 Cloudflare目前不支持超過30/60秒的進程。 – 2015-02-09 19:31:33

+0

根據我們的經驗,CloudFlare的會超時,如果它是在30/60秒... – Pencilcheck 2015-07-03 23:01:37

0

控制檯實用程序「netstat的」顯示,從一些的CloudFlare連接都在CLOSE_WAIT狀態。指出該服務器剛好沒有正確關閉連接。使用Message Analyzer查看我的Web服務器的TCP流量,發現已建立好幾個連接併發送了http請求,但這些連接從未由我的服務器處理過。

因此,我們得到一個答案:寡不敵衆可以接受同時建立的連接數()調用。所以TCP棧連接並等待應用程序處理它的連接。根據情況,這種情況永遠不會發生,所以客戶端在30秒超時後丟棄這個連接而沒有得到任何響應。

爲了解決這個問題,必須增加的優秀可以接受數量。該參數可以命名爲「最大同時連接數」或類似的名稱。檢查你的Web服務器文檔\請求支持找出它。

另外,作爲一個實驗,您可以通過強制您的服務器回覆每個請求的「連接:關閉」標頭。這可能會阻止達到活動連接限制問題,因爲CloudFlare保持活動時間太長。

而且,你做的更多的併發請求,越概率獲得煩惱。您可以嘗試設置一些小型網絡服務器端超時用於空閒連接。

P.S:一個客戶端後,CloudFlare的連接數插圖加載一個頁面: (http://i.imgur.com/IgwGLCf.png

+0

優秀數目接受/連接請求是*積壓。*它無關的併發連接數,和他們都不與CLOSE_WAIT有什麼關係,只是一個套接字泄漏。 – EJP 2017-08-04 11:59:15