免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 7434 | 回复: 17
打印 上一主题 下一主题

[FreeBSD] 请各位帮忙分析原因,排除服务器障碍 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-08-28 13:21 |只看该作者 |倒序浏览
20可用积分
各位好。在使用FreeBSD做Web服务器的过程中,遇到了一个很棘手的问题,自己努力了很久,也没有找到问题的原因所在。所以发贴请cu的各位朋友帮帮忙,分析一下出现这个问题的可能的原因。非常感谢!


具体描述:
服务器上的网站时常出现网页传输一小部分代码(一般都在1k-2k左右)时莫名其妙的中断传输。客户端浏览器状态栏一直是传输数据的状态,浏览器标题栏已经显示网页的<title>,浏览器下方进度条一直在走,但事实上已经不传输数据了(查看源文件就有一半HTML,而每次出现问题时传输的源文件也往往不在同一个地方中断)。此时如果客户端不关闭浏览器,连接状态会一直持续几分钟,直到客户端浏览器显示“找不到服务器”。每次出现这种情况时候,如果刷新浏览器,基本上每次都会完全正常的打开页面。

更多信息:
出现问题的页面php页居多,HTML页也时而出现;
问题出现没有规律,时而浏览几十个网页都不出现,时而浏览几个网页就出现好几次,而且并非服务器运行一段时间才出现,有时候刚刚重启服务器就有可能出现,而这个时候服务器CPU、内存、IO、网络负载都很低。
我尝试了很多排除法,比如关闭包括Zend Optimizer,尽可能的关闭PHP、Apache的模块,而且曾经用Nginx+php-fastCGI取代Apache+PHP,问题依旧。区别是,传输一小部分代码的字节数多了一点(10K左右)。我自己现在怀疑问题可能出在操作系统、路由器或者网络上,但还没找到方法进行排除,请大家帮出出主意。


我的服务器情况:

软件配置:
FreeBSD7.0 amd64
MySQL 5.0.67
Apache 2.2.9
PHP 5.2.6
Zend Optimizer v3.3.0
基本是通过编译源代码安装的,系统之前重做过,port安装,问题同样存在。

硬件配置:
主板:Intel S3000AH
CPU:XEON 3210
内存:1G ddr2_667*4
硬盘:Seagate ST3500320NS*1
网卡:主板集成的Intel 82573E

网络环境:
网通光纤,一个公网IP,通过一台TP-link R480T路由器(192.168.1.1)映射80端口到FreeBSD服务器(192.168.1.22)上,通过Apache 的mod_proxy将几个别的域名或者某个域名的下面某个目录反向代理到内网的另一Windows服务器(192.168.1.11)上。

服务器运行程序概况:
通过Apache的虚拟主机发布几个静态页站、Wordpress博客程序和几个Discuz论坛,流量都不大。

虚拟主机配置:

bsd# ee /usr/local/apache2/conf/extra/httpd-vhosts.conf

  1. ...
  2. <VirtualHost 192.168.1.22:80>
  3.     DocumentRoot "/home/www/ky365.com"
  4.     ServerName [url]www.ky365.com[/url]
  5.     ServerAlias ky365.com
  6.     CustomLog "|/usr/local/sbin/cronolog /home/www/logs/ky365.com/access_log.%Y%m%d" combined
  7.     ErrorLog "|/usr/local/sbin/cronolog /home/www/logs/ky365.com/error_log.%Y%m%d"
  8. <IfModule mod_rewrite.c>
  9. RewriteEngine On
  10. RewriteRule ^(.*)/archiver/((fid|tid)-[\w\-]+\.html)$ $1/archiver/index.php?$2
  11. RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+)\.html$ $1/forumdisplay.php?fid=$2&page=$3
  12. RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/viewthread.php?tid=$2&extra=page\%3D$4&page=$3
  13. RewriteRule ^(.*)/space-(username|uid)-(.+)\.html$ $1/space.php?$2=$3
  14. RewriteRule ^(.*)/tag-(.+)\.html$ $1/tag.php?name=$2
  15. RewriteRule ^/([0-9]+)$ /index\.php\?uid/$1 [L]
  16. RewriteRule ^/([0-9]+)/spacelist(.+)$ /index\.php\?uid/$1/action/spacelist/type$2 [L]
  17. RewriteRule ^/([0-9]+)/viewspace(.+)$ /index\.php\?uid/$1/action/viewspace/itemid$2 [L]
  18. RewriteRule ^/([0-9]+)/viewbbs(.+)$ /index\.php\?uid/$1/action/viewbbs/tid$2 [L]
  19. RewriteRule ^/([0-9]+)/(.*)$ /index\.php\?uid/$1/$2 [L]
  20. RewriteRule ^/action(.+)$ /index\.php\?action$1 [L]
  21. RewriteRule ^/category(.+)$ /index\.php\?action/category/catid$1 [L]
  22. RewriteRule ^/viewnews(.+)$ /index\.php\?action/viewnews/itemid$1 [L]
  23. RewriteRule ^/viewthread(.+)$ /index\.php\?action/viewthread/tid$1 [L]
  24. RewriteRule ^/mygroup(.+)$ /index\.php\?action/mygroup/gid$1 [L]
  25. </IfModule>
  26. </VirtualHost>
  27. ... ...

  28. <VirtualHost 192.168.1.22:80>
  29.     DocumentRoot "/home/www/colorfuldays.net"
  30.     ServerName [url]www.colorfuldays.net[/url]
  31.     ServerAlias colorfuldays.net
  32.     ProxyPreserveHost On
  33.     ProxyPass /guestbook          [url]http://192.168.1.11:80/guestbook[/url]
  34.     CustomLog "|/usr/local/sbin/cronolog /home/www/logs/colorfuldays.net/access_log.%Y%m%d" combined
  35.     ErrorLog "|/usr/local/sbin/cronolog /home/www/logs/colorfuldays.net/error_log.%Y%m%d"
  36. </VirtualHost>
  37. ... ...

  38. <VirtualHost 192.168.1.22:80>
  39.     ServerName biaoge.org
  40.     ServerAlias [url]www.biaoge.org[/url]
  41.     ProxyPreserveHost On
  42.     ProxyPass /      [url]http://192.168.1.11:80/[/url]
  43.     CustomLog "|/usr/local/sbin/cronolog /home/www/logs/biaoge.org/access_log.%Y%m%d" combined
  44.     ErrorLog "|/usr/local/sbin/cronolog /home/www/logs/biaoge.org/error_log.%Y%m%d"
  45. </VirtualHost>
复制代码


www.ky365.com/bbs 一个Discuz!论坛;
www.colorfuldays.net 一个Wordpress博客,在根目录下的.htaccess中有mod-rewrite重写规则进行URL伪静态化;
www.biaoge.org 通过mod_proxy到windows服务器的彪哥网 :wink: ——岗岗的

上面的几个站都有描述中的问题出现。由于是网通线路,如果电信线路浏览也许速度不理想

一些服务器状态信息,我会随后在后面截图发上来。

如果需要提供更多信息,请各位指教,我随时发上来。我的Email:master@ky365.com QQ:20253434 Phone:13500403685

[ 本帖最后由 吕涛 于 2008-8-28 13:24 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-08-28 13:33 |只看该作者
#systat 1 -vm



#top



apache server-status



#netstat -m



#ifconfig

论坛徽章:
0
3 [报告]
发表于 2008-08-29 11:42 |只看该作者
谢谢哈尔滨啤酒。还没安装过低版本的PHP呢,只在先前用过5.2.5。Apache和MySQL版本有什么建议吗?2.0.X是不是更合适?

论坛徽章:
0
4 [报告]
发表于 2008-08-29 12:58 |只看该作者
通过一台TP-link R480T路由器????????
搞笑??TP-LINK这种垃圾都能用???去掉这个垃圾设备,将IP直接赋予FB,其它机器通过FB连接INT。

论坛徽章:
2
技术图书徽章
日期:2013-09-04 15:21:51酉鸡
日期:2013-11-01 21:20:20
5 [报告]
发表于 2008-08-29 13:12 |只看该作者
帮你听了一下包,在出现长时间挂起的时候,远端莫名其妙地发送了一个R包,建议你监听一下服务器以及在出口上的包是否存在异常。

论坛徽章:
0
6 [报告]
发表于 2008-08-30 03:33 |只看该作者
谢谢楼上两位朋友。正如macafee所说,使用这个TP-LINK路由器确实不太明智,我也已经意识到。而且安装FB的主板也正好集成有两块em,可以一个接外网一个接内网。问题在于我还没配置过双网卡,对于一个新手来说,既没有基础又没有一个测试环境,怎么也需要一段时间才能配置好。而线路上已经有几个网站,不好断掉。另外,现在也不能确定就是路由器的问题,这个路由器已经使用两三年,没有添置这台FB服务器之前,一直是通过它映射80端口到上面提到的Windows server 2003通过IIS发布网站,一直相当稳定。难道映射到Windows和FreeBSD中的80端口还有区别吗 :em11: 最近我认真研究一下双网卡,直接把外网IP直接接到FB上。也算进一步采用排除法~~~~~~
mirnshi提到的监听数据包,我对这个还一点不了解,R包是什么,也一点不清楚~~~~~~ 我会去学习一下,然后自己听一下~~~ 谢谢 :wink:

论坛徽章:
1
2015年迎新春徽章
日期:2015-03-04 09:50:28
7 [报告]
发表于 2008-08-30 07:22 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
8 [报告]
发表于 2008-08-30 10:02 |只看该作者
呃,偶是进来学习来的。。

论坛徽章:
0
9 [报告]
发表于 2008-08-30 23:16 |只看该作者
我碰到过很多办公室用户用台机发布网页,都是由于中间存在什么TPLINK,什么水星啦,什么XX之类的所谓路由器导致出现很多莫名其妙的问题。一般去掉这些设备后就都正常了。

论坛徽章:
0
10 [报告]
发表于 2008-08-30 23:58 |只看该作者
谢谢tecer。是的,这套硬件自从上线就一直装的64位的FB,如果问题继续解决不了,我考虑装一下i386。也许存在一些硬件、软件不兼容的情况 :em11:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP