簡體   English   中英

Nginx“失敗(111:連接被拒絕)”

[英]Nginx “Failed (111: Connection refused)”

我創建了一個t1.micro實例,設置了安全組,然后將該實例與彈性IP關聯(彈性IP的作用域為“ VPC”,因為這是創建EIP時的唯一選擇)。

我在瀏覽器中輸入了公共DNS URL,可以按預期訪問我的網站; 但是,當我僅輸入與此DNS URL關聯的Elastic-IP / Public-IP地址時,會收到空白屏幕(空白HTML文檔)。 當我在WhatsMyDNS.net上輸入我的DNS URL時,它將顯示所有位置的預期彈性IP。 同樣,當我dig +trace +add www.mySite.com ,我看到了預期的名稱服務器; 因此,我懷疑這是DNS傳播問題。

這使我相信我在其他地方可能還有我的安全小組遇到的問題。 對於我的安全組,我具有以下用於調試的配置:

(Inbound)
HTTP, TCP, Port 80, 0.0.0.0/0
SSH, TCP, Port 22, 0.0.0.0/0

(Outbound)
All Traffic, All, All, 0.0.0.0/0

我的VPC網絡接口具有相同的安全組,並已應用於正確的實例,同樣,我的彈性IP也已與正確的網絡接口相關聯。 一切都與正確的EC2實例有關。

我距離AWS專家還很遠,而且我已經閱讀了許多有關此問題的文章,但是關於如何解決此問題,似乎沒有任何明顯的明顯之處。 網絡ACL可能有問題嗎? 我需要VPN連接嗎? 也許是VPC路由表中的某些內容?

我可以專門檢查什么以進行調試和修復? 有人以前曾經歷過這種情況,並且知道我可能在哪里出問題了嗎?

如果需要更多信息,請告訴我。 謝謝。


更新

在我的EC2實例上,如果我停止服務器:

  • 在DNS URL上,我收到預期的502 Bad Gateway, Nginx錯誤(不用說,我使用Nginx作為前端服務器)。 但...
  • 在彈性IP地址上,我仍然收到空白的HTML表單

經過多次嘗試,我在錯誤日志中發現了這一點:

 *564 connect() failed (111: Connection refused) while connecting to upstream 

我認為這清楚地表明了我的問題,我將對其進行調試。

如果有人知道副手,請隨時發表評論。

如果您的DNS是正確的,那么它將與安全組和ACL無關,因為它們完全不了解DNS。

問題可能出在您的Web服務器配置上。 由於瀏覽器地址欄中的主機名或IP地址隨每個請求發送到HTTP Host:標頭中的Web服務器,因此Web服務器有機會在單個Elastic IP后面服務不同的“站點”。

如果您沒有在Host:標頭包含IP地址而不是主機名時將其顯式或隱式(通過“默認站點”設置的某種變體)配置為期望請求,則結果會因服務器而異,因為它可能沒有知道該怎么辦。

檢查Web服務器日志中是否有這些空白的screeen請求,以及正在運行的服務器軟件的配置和適當的文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM