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

March 18th, 2007 Michael Posted in Apache / Lighttpd 13 Comments » 3,525 views

  今天晚饭后抽了点闲功夫,把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了。

AddThis Social Bookmark Button

Lighttpd 图片和视频等文件的防盗链处理

January 31st, 2007 Michael Posted in Apache / Lighttpd 3 Comments » 2,754 views

  用过Apache的朋友都知道mod_rewrite可以用来进行处理防盗链,Lighttpd也有同样的功能,而且总的来说,lighttpd.conf配置文件比httpd.conf更简单明了。 原来一直使用Apache来处理防盗链,今天修改了服务器上Lighttpd的配置,直接实现了防盗链,下面是防盗链部分的代码。

$HTTP["referer"] !~ "^($|http://.*\.(toplee\.com|8zone\.cn))" {       
  $HTTP["url"] =~ "\.(jpg|jpeg|png|gif|rar|zip|mp3)$" {
    url.redirect = (".*"    => "http://www.toplee.com/blog/")
  }
}

  懂点编程的朋友一定惊叹lighttpd的配置如此简洁明了,我非常喜欢这种风格的东西!
Lighttpd

AddThis Social Bookmark Button

squid后面的lighttpd日志记录用户ip的方法

January 8th, 2007 Michael Posted in Apache / Lighttpd 4 Comments » 2,148 views

默认在lighttpd的accesslog里面无法记录透过squid或者apache的mod_proxy过来的用户ip地址,全都会记录到squid或者apache机器的ip地址,但是httpd头里面的用户ip其实是发送到lighttpd的,可以通过修改accesslog.format来达到目的,下面是我的格式,跟combined兼容:

accesslog.format  = "%{X-Forwarded-For}i %v %u %t \"%r\" %s %b  \"%{User-Agent}i\" \"%{Referer}i\""

其中”%{X-Forwarded-For}i 就是记录了用户来源的ip地址

AddThis Social Bookmark Button

在FreeBSD上使用mod_dosevasive对抗DDos攻击

September 24th, 2006 Michael Posted in Apache / Lighttpd, Linux / BSD, 技术交流 7 Comments » 8,195 views

  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的特性。
Read the rest of this entry »

AddThis Social Bookmark Button

Apache2安装后出现403 Forbidden 的原因

June 1st, 2006 Michael Posted in Apache / Lighttpd, 技术交流 12 Comments » 8,551 views

最新的apache2.2提供和不少新模块的支持,也在性能和安全上有改进,也就造成一些新的机制和概念需要我们不断去摸索和熟悉,前一阵就遇到了安装好apache2并配置好httpd.conf后,无论访问什么路径都出现 403 forbidden的提示,折腾了半天才从官方的maillist文档里面找到答案。
Read the rest of this entry »

AddThis Social Bookmark Button