我是亞馬遜EC2的新手,所以請原諒我,如果我問一個愚蠢的問題。我使用「Amazon Linux AMI」創建了一個實例,並在其中安裝了NodeJS。亞馬遜EC2實例無法建立HTTP連接
我添加了從轉發端口80上的所有請求下面的IP表項爲3000
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3000
,我創建了一個Hello World腳本來測試此安裝。
var http = require("http");
http.createServer(function (request, response) {
// Send the HTTP header
// HTTP Status: 200 : OK
// Content Type: text/plain
response.writeHead(200, {'Content-Type': 'text/plain'});
// Send the response body as "Hello World"
response.end('Hello World\n');
}).listen(3000);
// Console will print the message
console.log('Server running at http://127.0.0.1:3000/');
這裏的問題是,當我嘗試ping到我的命令行例如,請求超時
ping ec2-52-26-59-26.us-west-2.compute.amazonaws.com
PING ec2-52-26-59-26.us-west-2.compute.amazonaws.com (52.26.59.26): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
我怎樣才能解決這個問題?
您是否檢查安全組3000端口是否打開? – Ashan
我沒有添加任何安全規則到目前爲止,如果我需要添加?你能告訴我需要在那裏添加什麼嗎? – Unnikrishnan
默認安全規則嚴重限制開放端口。請參閱http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html – Carey