我开发了一个Angular 2应用程序,在我的本地机器上,当我说npm start
时,它给了我一个字符串,如
提供C:\ Users \ pepperboy \ myangularproject
它还启动了我可以直接点击的浏览器。
但是,当我在我的Amazon ec2虚拟机上运行它时,运行npm start
并没有给我任何东西。我刚回到终端,光标在下一行。因此,我不知道如何访问我的应用程序。
我的亚马逊EC2的网址如下
http://ec2-35-167-53-209.us-west-2.compute.amazonaws.com
所以,我试图访问我的应用程序,
http://ec2-35-167-53-209.us-west-2.compute.amazonaws.com:8080
然而,它只是稍微圈了一下,然后回来说,
无法访问此网站
ec2-35-167-53-209.us-west-2.compute.amazonaws.com花了太长时间才到 响应。
我也尝试过,
http://35.167.53.209:8080/
具有相同的结果,(圈子并给出与上面相同的信息 - 无法访问此网站)
编辑:我已经从下拉列表中启用了Amazon ec2安全设置中的HTTP端口80,我最初设置为All traffic
。我没有看到任何与8080匹配的内容。我仍然无法访问链接http://ec2-35-167-53-209.us-west-2.compute.amazonaws.com:8080
。 PS:我没有重新启动vm
EDIT2:我已经包含端口8080,请参见下面的图片,仍然无法点击http://ec2-35-167-53-209.us-west-2.compute.amazonaws.com:8080
答案 0 :(得分:0)
检查你的iptables EC2设置?如果启用了?你应该打开8080,你可以使用命令netstat -ntlp | grep 8080
,检查您的节点服务
答案 1 :(得分:0)
也许您的服务器套接字绑定到环回IP地址127.0.0.1而不是"所有IP地址"符号IP 0.0.0.0(注意这不是网络掩码)。
如果是这种情况,您可以将bind ip发送到listen函数,您可以在其中放置端口。类似的东西:
听(8080," 0.0.0.0")