node項目部署之后,發現訪問不了,pm2 list也是正常的,vue項目都可以正常訪問,就是請求后台nodejs的時候就報404。
原以為是pm2的問題,先停了pm2,用node app.js的方式運行后端代碼,項目能正常啟動但是依然無法訪問
原因:后端運行端口未放行
1、檢查ecs的安全組規則,node項目端口3000、8888是否放行
2、確認node正常運行
輸入命令:ps -aux | grep node
3、檢查端口情況
輸入命令查看端口情況:netstat -anp | grep 8888
4、檢查服務器是否開啟了防護牆
查看規則鏈:iptables -L -n
5、放行3000、8888端口,之后便可正常訪問
命令:iptables -I INPUT -p tcp --dport 3000 -j ACCEPT
其他情況:
還有別的情況就是node項目啟動后連接終端掛了,所以訪問不了,進程也占了,端口也占了。
1、查看哪個進程占用了7002端口:netstat -tunlp | grep 7002
2、首先把占用 7002 端口的進程終止。
輸入命令:kill -s 9 14258 (其中-s 9 制定了傳遞給進程的信號是9,即強制、盡快終止進程。各個終止信號及其作用見附錄。)
把node項目用 7002 端口啟動即可。