2015-12-17 221 views
1

我使用maven生成了澤西平靜的服務器。在我發出命令mvn exec:java後,服務器正在成功偵聽port 8080。假設服務器進程在machine A(機器A已安裝Ubuntu服務器操作系統,其IP爲10.131.252.248)上執行。無法連接在遠程計算機上運行的服務

我然後在機器A鍵入命令:

$ curl http://127.0.0.1:8080/myapp/myresource/getGoalModelList 

我順利拿到了返回值。

然後,我執行命令再次使用機器A.另一種風格

$ curl http://10.131.252.248:8080/myapp/myresource/getGoalModelList

10.131.252.248是機器A的IP,但我不能得到任何東西,在條命令 屏幕顯示:curl: (7) Failed to connect to 10.131.252.248 port 8080: Connection refused.

當我發送相同的獲取請求http://10.131.252.248:8080/myapp/myresource/getGoalModelList

通過在win8.1操作系統上運行的機器B上的瀏覽器。它也沒有得到預期的結果。爲什麼?

+0

是否在您的機器上打開了端口8080? –

+0

CHeck防火牆。做一個'netstat -na | grep 8080'在你的Linux機器上。共享結果 – Jan

+0

很可能是在10.131.252.248機器上運行的防火牆,不允許從外部連接到端口8080(僅限本地主機)。 –

回答

3

當你的netstat -na | grep 8080表明:

tcp6 0 0 127.0.0.1:8080 :::* LISTEN 

你被綁定您的服務器爲127.0.0.1,這只是本地主機。因此,只有來自同一臺計算機的連接才能夠看到該端口。在你的音頻接口上(比如192.168.1.1),端口沒有被綁定 - 所以沒有可能的連接。

通過結合0.0.0.0指定結合所有可用的接口 - 讓你的端口是現在不僅要127.0.0.1,但你的外連接以及可見。

相關問題