Web服务器的急救工具箱

来源:天极网 时间:2007-03-29 11:05:00 

  就像家庭中90%的维修活都能用螺丝刀和扳手来完成,Web服务器也不例外。让我们来看看这些工具。

  1、服务器响应缓慢

  如果服务器响应缓慢,需要做的第一件事情就是判断问题来自服务器还是网络,第一个工具就是uptime。

  uptime 会显示服务器的平均负载,如果最后的这个数字高于 2 或者 3 ,问题的原因就在于有一些进程占用系统太多资源。如果这个数字不是很高,你就需要考虑网络的因素了。

  如果看到的高的负载的话,就需要使用 top 命令来确定那些进程在消耗系统资源。

  top 命令缺省显示10条进程,当然你可以使用 top N 来指定需要查看的进程数。

  更加详细的进程列表可以使用 ps -auxw 命令

  比较 Web 进程的“硬”限制(Apache 编译时的限制)和“软”限制(httpd.conf的限制),如果两者的数字接近,那么你就要考虑升级硬件或者重新编译 Apache 了。

  2、未授权登录

  如果担心有非法用户闯入系统,最简单的办法就是用 w 命令来检查。

  如果真的看到有非法用户在你的系统上,可以立即 kill 他的进程, 用 vipw 命令把他的口令修改为“*”,或者把 shell 改为 /sbin/nologin。

  3、服务不能启动或者崩溃

  如果 Web 服务器不能启动或者启动时崩溃,就需要使用 apachectl 命令来找到原因。首先用 apachectl configtest 命令检查 httpd.conf 的合法性。但是 apachectl 并不是万能的。如果问题依然不能解决,我们就应该检查错误日志。另外,apachectl 检查 /var/run/httpd.pid 文件来找到原来的进程,如果进程号不同,apachectl stop 命令不会工作。这种情况下就需要使用 ps 命令来 kill 对应的进程。

  4、网络检测

  查找因为网络问题引起的原因时,第一个简单的命令就是 ping。

  如果 ping 的结果看起来很正常,或许就需要使用比较大的包来试一下,ping 的缺省包大小为 56 字节,我们用 -s 指定包大小为 2048 字节来试一下。采用大的包之后,返回时间延长很正常,但是非常长的时间返回或者包丢失就显示网络有问题了。

  5、交叉信号

  如果怀疑服务器和交换机之间的网络配置有问题,可以采用 netstat -finet 命令来显示打开的端口以及连机的外部服务。

  如果你关心自己的服务器是否遭到攻击,就会显示内核的内存使用超常,可以采用

  netstat 的 -m 参数来查看。

  如果你发现 httpd 的负载不是很重,但是网络资源占用的内存还是很大的话,可以考虑关闭一些服务和端口。

  6、网络问题

  如果网络发生了问题,就需要使用 ifconfig 命令来检查网卡是否正常。这个命令会显示网卡的 IP 地址,掩码,双工,速率等。

  常见的问题是网卡的速率或者双工设置和交换机端口不一致。特别是设置了“autosense” 选项,但是却没有成功。 可以采用

  ifconfig down eth0 [options]

  来关闭。

  7、权限问题

  有些稀奇古怪的问题,很可能来自没有剩余空间。可以采用 df 命令来检查剩余的硬盘空间。一个简单的例子,就是 PHP 的session 无效了,原因就是写入 session 的文件系统 /tmp 已经满了。

  有些问题就是没有设置好权限,常见的问题就是没有为 CGI 脚本设置 x 权限,没有为一些目录设置 rx 权限。

  8、常见的怀疑对象

  如果有问题发生,其实第一件事就应该是检查系统日志:/var/log/messages。

  如果不能在 /var/log/ 目录找到有些日志文件,可以查看 /etc/syslog.conf 的配置。

  对于 Apache 来说,就需要检查 [apache_dir]/logs/error _log 来确定不能启动的原因。

  以上是笔者应对Web 服务器应急措施的一些个人经验,如果你有好的经验,笔者热情欢迎您的交流。

  

标签:
0
投稿

猜你喜欢

  • 两个虚拟SMTP服务器防止垃圾邮件中转的总结

    2008-05-04 15:18:00
  • apache性能优化之启用gzip压缩

    2010-03-13 14:48:00
  • 就像谈恋爱结婚样 对关键词也要非诚勿扰

    2009-01-03 15:18:00
  • Flv文件不能播放解决方法

    2008-06-05 13:01:00
  • 关键词选择与维护教程

    2010-08-05 15:02:00
  • Sprint拟注资15亿美元部署下一代Wimax网络

    2009-11-09 10:54:00
  • 在Windows IIS下配置WordPress MU环境

    2008-05-28 13:56:00
  • Twitter发展史:从纸上创意到10亿美元估值

    2009-10-09 09:10:00
  • 网站快速备案教程

    2010-03-23 13:04:00
  • 谷歌官方《搜索引擎优化指南》网站推广篇

    2008-11-24 20:46:00
  • 网站访问流量的主要统计指标

    2009-01-04 10:35:00
  • 投放google adwords广告如何留住客户信息经验谈

    2010-05-10 15:48:00
  • Google、Baidu搜索结果页面点击分配

    2008-05-06 12:19:00
  • 修改FTP密码的方法

    2007-10-31 13:44:00
  • 阻断拒绝服务攻击

    2009-09-06 16:31:00
  • GoDaddy的域名管理教程

    2010-04-21 13:05:00
  • 经济危机下,决心好好做站

    2008-12-09 00:09:00
  • 评价网站服务器软件的几个方面

    2007-09-03 14:02:00
  • 交互性与口碑传播 看博客的广告两大策略

    2009-01-20 10:37:00
  • 坚持更新 让我成功跳出谷歌沙盒

    2009-01-10 22:07:00
  • asp之家 网站运营 m.aspxhome.com