我有问题访问我的网站www.egytex.com,ping到网站工作,并没有丢失的数据,但直接访问给我一个没有路由到服务器! 如果没有路由到服务器,ping如何工作!
任何人都有这个解决scheme?
谢谢!
Ping通常使用ICMP,而Web访问使用TCP over HTTP。 所以有可能是一些防火墙或filter阻塞了一个,而另一个则没有。
你确定Web服务器正在运行,正在监听你期望的端口(80?),并没有任何阻止访问的允许/拒绝规则?
您是否使用托pipe服务提供商? 他们有一个帮助台吗? 他们还在做生意吗?
为了扩展RGB的答案,这几乎肯定是防火墙问题,因为我也可以到达服务器上的ssh端口:
[madhatta@risby ~]$ ping www.egytex.com PING www.egytex.com (209.250.246.227) 56(84) bytes of data. 64 bytes from www1.texmarkcorp.com (209.250.246.227): icmp_seq=1 ttl=54 time=112 ms [...] [madhatta@risby ~]$ telnet www.egytex.com 22 Trying 209.250.246.227... Connected to www.egytex.com. Escape character is '^]'. SSH-2.0-OpenSSH_4.3 [madhatta@risby ~]$ telnet www.egytex.com 80 Trying 209.250.246.227... telnet: connect to address 209.250.246.227: No route to host
而在最后一种情况下,这个答案是立即的,所以它不是一个ARP超时(不太可能)。 这不是DNS,因为每次都显示相同的地址。 使用iptables -L -n -v检查本地防火墙,并确保允许到端口80的传入TCP通信。 如果是这样,请把它和你的ISP联系起来。
不幸的是,在某些情况下,您的浏览器和操作系统可能使用不同的DNSparsing器。 你在用什么操作系统? 你可以尝试不同的浏览器? 'nslookup http://www.egytex.com'是否与ping显示的IP地址一致? traceroute怎么样? 您的浏览器或计算机可能具有caching的DNS。
如果你的防火墙configuration不正确,你肯定会遇到这个问题。 我也能够ping一台服务器,但无法打开一个网页,即使其他所有的东西都是正确的。 防火墙修复了它。
这是一个复杂的话题,我build议在terminal上执行“man iptables”来检查文档,并查找更多的资源和教程。 如果你只是想快速检查确实是这个问题,你可以在terminal上进行以下操作。
首先,备份你现有的iptables,例如:
mv /etc/sysconfig/iptables /etc/sysconfig/iptables.bkp
然后使用您最喜欢的文本编辑器,使用以下文本创build一个新的/ etc / sysconfig / iptables文件:
# Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT -A INPUT -j REJECT --reject-with icmp-host-prohibited -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
这将允许你ssh到机器(端口22)以及http(80)和https(443)工作。 要使这些更改生效,请重新启动防火墙:
service iptables restart
如果您仍然可以ping通但无法访问任何网页,则可能需要排查http服务器的故障。