我正在使用角度cli設置角度應用程序。運行ng serve
命令會在此地址<my_ec2_host_name>:4200
處生成一個服務器。當我嘗試訪問瀏覽器中的頁面時,它不起作用(連接超時錯誤)。我相信這是因爲安全原因,所以我增加了以下規則,以我的安全組的EC2實例:無法訪問角度應用程序的ec2實例上的端口
端口4200現在應該是可訪問的,但我還是不能讓網頁載入。有人能想到如何讓這個工作?
我正在使用角度cli設置角度應用程序。運行ng serve
命令會在此地址<my_ec2_host_name>:4200
處生成一個服務器。當我嘗試訪問瀏覽器中的頁面時,它不起作用(連接超時錯誤)。我相信這是因爲安全原因,所以我增加了以下規則,以我的安全組的EC2實例:無法訪問角度應用程序的ec2實例上的端口
端口4200現在應該是可訪問的,但我還是不能讓網頁載入。有人能想到如何讓這個工作?
您正在做的步驟對於通過EC2控制檯中的安全組打開端口是正確的。確保您正在修改正確的安全組,並確保您的更改已保存。
您的容器可能有其他防火牆,因此您需要檢查操作系統文檔。例如,RHEL使用iptables作爲進一步的安全措施:https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Security_Guide/sect-Security_Guide-IPTables.html。
應該提到我正在運行Ubuntu操作系統。 – TK123
看起來正確。你確定你的服務器正在運行並且正在監聽連接嗎?
您應該ssh到該服務器,並驗證該頁面可以在本地加載。例如:
curl http://<YOUR HOST IP ADDRESS>:4200
eg: curl http://54.164.10.123:4200
您應該小心使用公共IP地址(例如:當您在EC2控制檯中時:IPv4公用IP)。我遇到過問題,我有一臺服務器監聽一個IP地址(通常是本地主機),而不是公共IP地址。
也可能是一個問題:您的主機是否在某種VPC內?
您可以設置在主機的選擇是這樣的:
ng serve -host 0.0.0.0
檢查NACL(如果你沒有更新他們的話也沒關係)。您是否已將公共(彈性)IP附加到EC2實例?檢查實例中的iptables。 –
服務器僅在本地主機上偵聽嗎?即什麼'netstat -na | grep 4200'返回?如果它類似127.0.0.1:4200,那麼你的服務器只在本地主機接口上監聽,而不是在所有接口上監聽。 – stdunbar