2017-05-08 157 views
0

我有我的Ubuntu系统上运行的Apache服务器,但是当我尝试通过我的Windows系统访问通过使用IE浏览器,铬,邮递员,我得到错误(网站是在线但没有响应连接尝试)。apache /在ubuntu上运行的应用程序没有响应连接请求

我已经做了我的tcpdump的Ubuntu系统上,我得到了下面登录

(10.223.186.65是我的windows系统的ip,10.223.197.177是我的linux系统的IP)

sudo tcpdump -i ens2f0 'port 80' 
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode 
listening on ens2f0, link-type EN10MB (Ethernet), capture size 262144 bytes 
18:38:07.437762 IP 10.223.186.65.49279 > 10.223.197.177.http: Flags [S], seq 1024624045, win 65535, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:08.442487 IP 10.223.186.65.49279 > 10.223.197.177.http: Flags [S], seq 1024624045, win 65535, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:10.442214 IP 10.223.186.65.49279 > 10.223.197.177.http: Flags [S], seq 1024624045, win 65535, options [mss 1460,nop,nop,sackOK], length 0 
18:38:22.291090 IP 10.223.186.65.49287 > 10.223.197.177.http: Flags [S], seq 4095681508, win 65535, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:23.297443 IP 10.223.186.65.49287 > 10.223.197.177.http: Flags [S], seq 4095681508, win 65535, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:25.297053 IP 10.223.186.65.49287 > 10.223.197.177.http: Flags [S], seq 4095681508, win 65535, options [mss 1460,nop,nop,sackOK], length 0 
18:38:33.501498 IP 10.223.186.65.49288 > 10.223.197.177.http: Flags [S], seq 2981170598, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:34.510766 IP 10.223.186.65.49288 > 10.223.197.177.http: Flags [S], seq 2981170598, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:36.511607 IP 10.223.186.65.49288 > 10.223.197.177.http: Flags [S], seq 2981170598, win 8192, options [mss 1460,nop,nop,sackOK], length 0 
18:38:39.849683 IP 10.223.186.65.49290 > 10.223.197.177.http: Flags [S], seq 2142699807, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:40.056095 IP 10.223.186.65.49291 > 10.223.197.177.http: Flags [S], seq 2881184651, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:40.562896 IP 10.223.186.65.49292 > 10.223.197.177.http: Flags [S], seq 951667956, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:42.807829 IP 10.223.186.65.49290 > 10.223.197.177.http: Flags [S], seq 2142699807, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:43.056197 IP 10.223.186.65.49291 > 10.223.197.177.http: Flags [S], seq 2881184651, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:43.560534 IP 10.223.186.65.49292 > 10.223.197.177.http: Flags [S], seq 951667956, win 8192, options [mss 1460,nop,wscale 8,nop,nop,sackOK], length 0 
18:38:48.806808 IP 10.223.186.65.49290 > 10.223.197.177.http: Flags [S], seq 2142699807, win 8192, options [mss 1460,nop,nop,sackOK], length 0 
18:38:49.052968 IP 10.223.186.65.49291 > 10.223.197.177.http: Flags [S], seq 2881184651, win 8192, options [mss 1460,nop,nop,sackOK], length 0 
18:38:49.568802 IP 10.223.186.65.49292 > 10.223.197.177.http: Flags [S], seq 951667956, win 8192, options [mss 1460,nop,nop,sackOK], length 0 

sudo netstat -anp | grep apache 
tcp6  0  0 :::5000     :::*     LISTEN  6094/apache2 
tcp6  0  0 :::80     :::*     LISTEN  6094/apache2 
tcp6  0  0 :::35357    :::*     LISTEN  6094/apache2 
unix 2  [ ACC ]  STREAM  LISTENING  40684 6094/apache2  /var/run/apache2.6094.0.1.sock 
unix 2  [ ACC ]  STREAM  LISTENING  40685 6094/apache2  /var/run/apache2.6094.0.2.sock 
unix 2  [ ACC ]  STREAM  LISTENING  40686 6094/apache2  /var/run/apache2.6094.0.3.sock 
unix 2  [ ACC ]  STREAM  LISTENING  40687 6094/apache2  /var/run/apache2.6094.0.4.sock 

的wget 10.223.197.177:80(在相同的Ubuntu系统下工作正常)

Apache在80端口上运行,但仍然无法在浏览器上获得输出,我尝试了Chrome和IE.I在另一个Ubuntu系统上也有类似的设置这工作正常。我知道问题是在我的Ubuntu系统,但unabl e。任何人都可以帮助我调试我面临的问题。有任何人随时面临同样的问题

回答

1

您已验证Apache正在运行(通过本地系统的netstatwget)我已经开始做数据包捕获,它可以验证ARP是否正常工作,以及TCP数据包是否到达目的地。竖起大拇指。 :)

当一个数据包到达它的目的地,但不回答,有(一般)两大根源:

  1. 应用配置错误或
  2. 也有一些是丢弃或重新路由包

从您发布的东西,让我们检查两个项目:

对于应用程序,请检查您httpd.conf文件和马确保您的访问控制设置正确。忽视安全,就应该是这个样子(从默认的CentOS安装):

<Directory /var/www/html> # This statement will allow everyone to access the # web server once they are able to reach it over TCP. Require all granted </Directory>

而且,看看在Apache日志(他们可能在你的httpd.conf文件<CustomLog>下的设置,否则他们应该是在某处/var/log/)。在尝试连接时检查是否有任何错误消息 - 如果存在阻止访问的Apache配置,则应该在日志中看到它。

关于网络,假设您的Apache访问控制设置正确,请检查是否有数据包丢失。查看是否启用了任何防火墙规则:sudo ufw status。如果这样做,您可以尝试禁用防火墙sudo ufw disable,这将刷新Ubuntu盒子上的所有防火墙规则,尽管它们将在重新引导时返回。

*编辑为Ubuntu UFW而不是CentOS iptables命令。

+0

是有问题的iptable rules.I更新规则现在的工作 – Ajay