我在EC2中設置了2個實例。一個運行nginx,並且與彈性IP地址有關聯,所以它可以公開訪問。AWS EC2上的前端應用服務器
其他沒有一個Web服務器,但是對8080端口
都運行一個RESTful服務器屬於一個安全組本規則:
Ports Protocol Source MongoDB-2-2-2-AutogenByAWSMP-
22 tcp 0.0.0.0/0
80 tcp 0.0.0.0/0
8080 tcp 0.0.0.0/0
如果我的理解是正確的,然後端口8080應該打開。
如果我ssh到我的網箱(nginx的運行),我試圖測試訪問我的REST風格的服務器上的其他實例:8080,所以我嘗試:
curl http://10.151.87.76:8080/1/tlc/ping
curl http://ip-10-151-87-76:8080/1/tlc/ping
curl http://ip-10-151-87-76.ec2.internal:8080/1/tlc/ping
所有這些都給我「無法連接到主機」錯誤。
如果我直接登錄到RESTful框並執行以下操作,它將起作用。
所以我知道我的服務是健康的。
任何想法,爲什麼我不能從其他實例看到端口8080讚賞。
好的...檢查。 – Greg
相同的可用性區:是 IP檢查:這是正確的 NMAP這樣說: 爲IP-10-151-87-76.ec2.internal(10.151.87.76) 主機已啓動的Nmap掃描報告(0.00053 s延遲)。 端口狀態服務 8080/tcp關閉http代理 因此即使安全策略表示它應該打開,它仍然在網絡框上關閉。我如何克服這一點? – Greg
>確保你的無頭服務是公開的,所以這就是原因。 REST API使用什麼Web服務器?如果是Apache,請確保config配置爲「Listen 8080」,而不是「Listen 1.2.3.4:8080」。如果它是獨立的應用程序,請確保它可以偵聽所有接口 - 某些客戶端默認會偵聽本地主機。 – hudolejev