Tag-Archive for » apache «

现在的web server,你都用什么?

LAMP叫了多年了,其实对于Apache来说,很多人都已经没有在使用了,很多人都在开始用Lighttpd和Nginx,其间的争论也很多,各种评测也不少,但是还是萝卜白菜各有所爱罢了。

在面对选择的时候,我也很困扰,实际上Apache固然是很久没用了,并非性能问题,而是感觉配置方法没有那么让我喜欢,有些臃肿,一直以来Lighttpd是我比较喜欢的,不管在配置、性能和架构方面都显得很简单,但是Lighttpd开发团队变迁问题以及1.5版的反反复复迟迟未推出,让我对Lighttpd的担忧多了一些,1.5计划要推出的对Comet的支持是我一直期待的,但是目前看来还是遥遥无期,于是就只剩下Nginx了,好在目前Nginx的开发更新还是比较快的,加上应用也越来越多,效果也不错,但是Nginx的技术架构总让我感觉有些别扭,如果说用Nginx来做Proxy或者负载均衡的辅助架构,我认为还是非常不错的。

朋友们,你们现在的网站选择的web server都什么情况呢?

把mrtg、awstats和bugzilla都移到了lighttpd下

  今天晚饭后抽了点闲功夫,把mrtg、awstats和bugzilla都移到的lighttpd下,于是把之前单独为这几个东西跑的apache停了,全部使用lighttpd提供web服务,系统开销又能小一些。

  mrtg很容易移植,几乎不用配置甚么就可以了,awstats和bugzilla都是perl的,需要配置lighttpd的cgi支持,简单的使用下面一行即可搞定awstats的移植

$HTTP["url"] =~ "^/awstats/" {
        cgi.assign = (
            ".pl" => "/usr/bin/perl",
            ".cgi" => "/usr/bin/perl"
            )
}

  不过照着上面的代码设置bugzilla的时候却遇到了问题,bugzilla的每个文件里面第一行的perl命令后加入了 -wT参数,在lighhtpd下以cgi模式运行会报 500 错误,尝试修改了index.cgi,去掉 -wT参数后可以正常运行,于是使用了下面的一句命令,把全部的cgi文件中-wT参数都给去掉了,这句命令估计对很多人都能有帮助:)

sed -in-place -e "s/ -wT/ /g" `grep " -wT" -l ./*.cgi`

  搞定!

  逐渐的,我开始抛弃Apache了。

在FreeBSD上使用mod_dosevasive对抗DDos攻击

  mod_dosevasive是一个Apache上的可选模块,它能应对一些基于HTTP的拒绝服务攻击,就是常说的Dos或者DDos攻击,这种攻击是让很多大小网站都头疼的攻击方式,mod_dosevasive从Apache1.3开始出现,虽然不能完全彻底的防止大规模的DDos攻击,但是对于普通的攻击来说,还是非常不错的选择。

  我的服务器(http://www.toplee.com/blog/)就曾经收到过类似的测试攻击(就是估计别人是为了练手,并非真的要针对我),搞得很头疼,我一些朋友的应用也遇到过类似的烦恼,基本上都通过安装mod_dosevasive得到了较好的解决。下面我就来以我在FreeBSD上安装基于Apache2.2.2的mod_dosevasive经过给大家分享一下经验,顺便进一步讲述一下mod_dosevasive的特性。
more »