2013-07-08 59 views
2

我正在開發Amazon EC2上的節點應用程序。一切工作正常,我可以部署到Heroku和Github上,但是在查看在端口5000上運行的實際應用程序(或者我用於應用程序的那個應用程序)時,我不知所措。Amazon EC2 - 通過特定端口訪問應用程序。

我試着運行ifconfig它給了我一些公共/私人DNS地址。使用這些作爲URL失敗。

我是否需要創建一個彈性IP地址?在部署之前是否有一些簡單的方法來查看我的應用程序?

回答

1

在AWS中,您需要通過防火牆(安全組)打開端口。 沒有必要擁有彈性IP,但是你可以,只要記住不要讓IP不連接(因爲它會被充電),但是對於附加的IP--它是完全正確的。

轉到:
EC2 > Security Groups > 'select your group' > 'tab Inbound' > Add IP > Apply

+0

'添加IP'不是安全組選項之一(請參閱:http://i.imgur.com/sayGKOS.png) – squeezemylime

+0

在下面的字段中鍵入您的自己的端口,並忽略您剛剛查看的預設(在截圖)。 – moka

3

爲了訪問您的實例特定的端口,你需要在防火牆中打開端口了。我建議專門爲您的Node.js服務器創建一個組,以確保該端口不可用於您可能擁有的其他實例。

  1. 轉到EC2>安全組
  2. 選擇現有安全組或創建一個
  3. 確保SSH是允許入境0.0.0.0/0
  4. 創建一個新的入站自定義TCP規則對於端口5000,允許0.0.0.0/0 Security Group
  5. 單擊添加規則
  6. 單擊應用規則更改

爲了得到你的公共DNS爲您的實例,單擊EC2>實例,然後單擊您的實例,並在信息窗格中向下滾動,直到您看到這一點:

Public DNS

在這個例子中的公共DNS是ec2-23-20-36-91.compute-1.amazonaws.com,因此如果你想要的IP是23.20.36.91。然後您可以連接23.20.36.91:5000ec2-23-20-36-91.compute-1.amazonaws.com:5000

這應該做到這一點。希望這有助於!

+0

試過..它不工作不幸... – squeezemylime

+0

我運行ifconfig得到我的IP地址,添加:5000(按照你的建議後),但它仍然無法找到服務器 – squeezemylime

+0

如果你從你的實例運行ifconfig它會更有可能報告只能從AWS雲中的其他實例才能訪問的內部IP(如果安全組允許的話)。爲了查找您的實例的IP,請查看公共DNS並使用它。我會相應地更新我的答案。 – tbjers