當我在端口80上的ec2機器實例上運行開源應用程序「atwork」(https://github.com/ritenv/atwork)時,我得到服務器響應的禁止代碼(403) :AWS ec2 Node.js應用程序 - 禁止端口80(403響應)
AtWork running at 0.0.0.0:80
GET/304 3.802 ms - -
GET /users/notifications 403 3.972 ms - 9
GET /posts?limitComments=true 403 0.956 ms - 9
GET /chats 403 1.289 ms - 9
GET /streams?subscribed=true 403 0.708 ms - 9
GET /streams?unsubscribed=true 403 0.859 ms - 9
GET /users/me 403 0.847 ms - 9
GET /system-settings 304 4.803 ms - -
GET /favicon.ico 304 0.453 ms - -
GET /system-settings 304 2.766 ms - -
GET /favicon.ico 304 0.322 ms - -
然而,當我另一個端口(8080),我得到以下200級的消息從 在服務器上運行它:
AtWork running at 0.0.0.0:8080
GET/200 4.219 ms - 6412
GET /users/notifications 304 12.189 ms - -
GET /posts?limitComments=true 304 5.162 ms - -
GET /chats 304 4.344 ms - -
GET /streams?unsubscribed=true 304 5.429 ms - -
GET /streams?subscribed=true 304 5.495 ms - -
GET /users/me 200 3.478 ms - 882
GET /system-settings 304 4.809 ms - -
Kirill A Novik is online.
GET /favicon.ico 304 0.795 ms - -
我曾嘗試以下(然而,這一切沒有工作):
- 修改AWS控制檯上安全組中的防火牆選項,以允許所有端口上的所有tcp通信。
運行iptable的是這樣的:
的iptables -F 的iptables -X 的iptables -t NAT -F 的iptables -t NAT -X 的iptables -t撕裂-F 的iptables -t碾壓機-X 的iptables -P INPUT ACCEPT iptables -P FORWARD ACCEPT iptables -P OUTPUT ACCEPT iptables -A INPUT -p tcp -dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp - sport 80 -m state --state ESTABLISHED -j ACCEPT
請幫我理解我做錯了什麼,以及如何讓端口80像其他端口一樣工作。
謝謝。
您是否檢查了ec2實例的安全組? http://stackoverflow.com/a/10454688/858578 – luchosrock
我做過了,所有的TCP流量都允許所有的ip + http允許所有的ip –
你還有其他的東西在80端口上運行嗎? –