我正在開發Amazon EC2上的節點應用程序。一切工作正常,我可以部署到Heroku和Github上,但是在查看在端口5000上運行的實際應用程序(或者我用於應用程序的那個應用程序)時,我不知所措。Amazon EC2 - 通過特定端口訪問應用程序。
我試着運行ifconfig
它給了我一些公共/私人DNS地址。使用這些作爲URL失敗。
我是否需要創建一個彈性IP地址?在部署之前是否有一些簡單的方法來查看我的應用程序?
我正在開發Amazon EC2上的節點應用程序。一切工作正常,我可以部署到Heroku和Github上,但是在查看在端口5000上運行的實際應用程序(或者我用於應用程序的那個應用程序)時,我不知所措。Amazon EC2 - 通過特定端口訪問應用程序。
我試着運行ifconfig
它給了我一些公共/私人DNS地址。使用這些作爲URL失敗。
我是否需要創建一個彈性IP地址?在部署之前是否有一些簡單的方法來查看我的應用程序?
在AWS中,您需要通過防火牆(安全組)打開端口。 沒有必要擁有彈性IP,但是你可以,只要記住不要讓IP不連接(因爲它會被充電),但是對於附加的IP--它是完全正確的。
轉到:
EC2 > Security Groups > 'select your group' > 'tab Inbound' > Add IP > Apply
爲了訪問您的實例特定的端口,你需要在防火牆中打開端口了。我建議專門爲您的Node.js服務器創建一個組,以確保該端口不可用於您可能擁有的其他實例。
爲了得到你的公共DNS爲您的實例,單擊EC2>實例,然後單擊您的實例,並在信息窗格中向下滾動,直到您看到這一點:
在這個例子中的公共DNS是ec2-23-20-36-91.compute-1.amazonaws.com
,因此如果你想要的IP是23.20.36.91
。然後您可以連接23.20.36.91:5000
或ec2-23-20-36-91.compute-1.amazonaws.com:5000
。
這應該做到這一點。希望這有助於!
試過..它不工作不幸... – squeezemylime
我運行ifconfig得到我的IP地址,添加:5000(按照你的建議後),但它仍然無法找到服務器 – squeezemylime
如果你從你的實例運行ifconfig它會更有可能報告只能從AWS雲中的其他實例才能訪問的內部IP(如果安全組允許的話)。爲了查找您的實例的IP,請查看公共DNS並使用它。我會相應地更新我的答案。 – tbjers
'添加IP'不是安全組選項之一(請參閱:http://i.imgur.com/sayGKOS.png) – squeezemylime
在下面的字段中鍵入您的自己的端口,並忽略您剛剛查看的預設(在截圖)。 – moka