[编辑] 我重启了第六次之后终于成功了。我不知道为什么,但是嘿,我可以继续了。[/编辑]
我正在使用 Python 开发一个网站Flask 框架。Flask 带有一个方便的内置开发服务器,该服务器在端口 5000 上工作。直到今天,我还在远程(aws)Ubuntu 14.04 服务器上愉快地进行开发,我可以使用直接 ip 和端口在浏览器中打开网站(http://52.xx.xx.xx:5000)。
效果很好,但是今天我启动开发服务器后,就无法再从浏览器访问该网站了。我确保开发服务器确实在运行并监听端口 5000。我还使用 netstat 进行了检查(查看端口 5000 上的监听 python 进程):
$ sudo netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 969/sshd
tcp 0 0 0.0.0.0:10843 0.0.0.0:* LISTEN 1913/python
tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 1913/python
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 960/mongod
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 1092/mysqld
tcp 0 0 127.0.0.1:6379 0.0.0.0:* LISTEN 982/redis-server 12
tcp6 0 0 :::22 :::* LISTEN 969/sshd
udp 0 0 0.0.0.0:18825 0.0.0.0:* 607/dhclient
udp 0 0 0.0.0.0:68 0.0.0.0:* 607/dhclient
udp6 0 0 :::13841 :::* 607/dhclient
因此我尝试 ping 服务器:
$ ping 52.xx.xx.xx
PING 52.xx.xx.xx (52.xx.xx.xx): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
etc.
这样ssh
可以,但是我的开发服务器和 ping 不起作用。
从这一点开始我有点迷茫了。有人知道接下来该怎么做才能调试吗?欢迎提供所有提示!
(注:我更像是一名程序员而不是系统管理员,所以请原谅我的无知。)
[编辑] 回答@MariusMatutiae 在评论中提出的问题。我确实重启了(多次),并且输出sudo iptables -L -n -v
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
我的知识到此为止。这能告诉你什么吗?