linux安装lighttpd及配置lighttpd
来源:互联网 发布:mac翻墙全局代理 编辑:程序博客网 时间:2024/05/16 10:13
http://lighttpdphp.com/
0 写在前面
1 分析准备
1.1 lighttpd源码准备及相关网站
lighttpd官方网站:http://www.lighttpd.net/,最新的稳定版本为1.4.20,开发版本为1.5.0,1.5的同以前的版本相比变大很大(相关信息可以查询该站点以及相关链接),而我这里分析的是1.4.20。
相关连接:
http://www.lighttpd.net/download/lighttpd-1.4.20.t ar.gz
http://www.lighttpd.net/download/lighttpd-1.4.20.t ar.bz2
http://www.lighttpd.net/download
http://www.lighttpd.net/
http://blog.lighttpd.net/
http://redmine.lighttpd.net/wiki/lighttpd/Devel
1.2 lighttpd源码分析工具
我个人用的是windows系统,使用的分析…
一,为什么要使用lighttpd?
apache不可以吗?
在支持纯静态的对象时,比如图片,文件等 ,
lighttpd速度更快,更理想
[下面四段话来自:http://www.javayou.com/diary/3264\]
Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。
lighttpd是众多OpenSource轻量级的web server中较为优秀的一个。支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能,而Apache之所以流行,很大程度也是因为功能丰富,在lighttpd上很多功能都有相应的实现了,这点对于apache的用 户是非常重要的,因为迁移到lighttpd就必须面对这些问题。
实用起来lighttpd确实非常不错,上文提到的apache overload的问题,用lighttpd就完全解决了。apache主要的问题是密集并发下,不断的fork()和切换,以及较高(相对于 lighttpd而言)的内存占用,使系统的资源几尽枯竭。而lighttpd采用了Multiplex技术,代码经过优化,体积非常小,资源占用很低, 而且反应速度相当快。
利用apache的rewrite技术,将繁重的cgi/fastcgi任务交给lighttpd来完成,充分利用两者的优点,现在那台服务器的负载下降了一个数量级,而且反应速度也提高了一个甚至是2个数量级!
二,从何处下载lighttpd?
http://www.lighttpd.net
这个是它的官方站
我下载的是 lighttpd-1.4.19.tar.bz2 ,在附件里。
- # cp lighttpd-1.4.19.tar.bz2 /usr/mylib \
- # tar jxvf lighttpd-1.4.19.tar.bz2
- # cd lighttpd-1.4.19
Lighttpd的优化是多方面的,最重要的就是优化其性能。操作系统有2大因素,可以帮助Lighttpd达到它的最佳性能。
HTTP Keep-Alive
禁用Keep-Alive可以帮助你的服务器减轻因大量打开着的文件描述符而产生的负载。
服务器默认的设置是:
server.max-keep-alive-requests = 128server.max-keep-alive-idle = 30server.max-read-idle = 60server.max-write-idle = 360在单个连接处理一行128个Keep-Alive的请求,在一个未被使用的Keep-Alive连接被Lighttpd丢弃之前等待30秒。如果你在一个高负载环境下一次处理许多连接(假设在24小时内有500个平行连接),那你可能陷入了如下描述的out-of-fd问题。server.max-keep-alive-requests = 4server.max-keep-alive-idle = 4这样可以提前释放连接,并在不损失性能的情况下释放文件描述符。完全禁用Keep-Alive是解决文件描述符短缺的最后手段:server.max-keep-alive-requests = 0事件处理器首先是和通知服务器一个连接是否已经准备好发送或接收数据相关的事件处理器。正如你所看到的,每一个操作系统至少有select()调用,但它有所限制。
参考http://trac.lighttpd.net/trac/wiki/TutorialInstallation中Installing services部分结合我的上篇博文
为lighttpd增加server的启动
进入lighttpd的安装目录
我的/home/suantop/lighttpd-1.4.19# sed -e ‘s/FOO/lighttpd/g’ doc/rc.lighttpd.redhat > /etc/init.d/lighttpd
# chmod a+rx /etc/init.d/lighttpd
# cp -p doc/sysconfig.lighttpd /etc/sysconfig/lighttpd
结合自己的环境需要更改/etc/sysconfig/lighttpd
# cat doc/sysconfig.lighttpd 默认的LIGHTTPD_CONF_PATH=/etc/lighttpd/lighttpd.conf修改内容如下:# cd /etc/sysconfig# vi lighttpdLIGHTTPD_CONF_PATH=/usr/local/lighttpd/lighttpd.conf
- linux安装lighttpd及配置lighttpd
- linux安装lighttpd及配置lighttpd .
- linux下如何安装lighttpd及配置lighttpd
- centos 配置安装lighttpd 及 php
- linux下lighttpd安装与配置
- linux下lighttpd安装与配置
- Lighttpd 的安装配置
- Lighttpd 的安装配置
- lighttpd安装与配置
- lighttpd安装与配置
- 安装lighttpd lighttpd随linux启动
- linux lighttpd 配置虚拟主机
- linux lighttpd 配置虚拟主机
- Lighttpd 的安装配置zz
- Lighttpd 的安装配置[转]
- Lighttpd的安装与配置
- lighttpd的安装与配置
- lighttpd安装配置支持php
- Visual Studio 2010 Unknown Error on Startup
- VirtualBox虚拟机网络设置(四种方式)
- JavaScript世界的一等公民 - 函数
- JavaWeb多种乱码解决方法
- 打造完美的xml技术解决方案(dom4j/xstream)
- linux安装lighttpd及配置lighttpd
- 上传 添加图片水印 添加文字水印 图片剪裁 压缩图片 返回文件类型
- svn使用
- Linux内存占用分析 进程内存空间
- CATransition ----- 是针对 layer's content. 的 变化
- atomic与nonatomic,assign,copy与retain的定义和区别
- StringUtils工具类 方法 详解!
- Top 10 Java Debugging Tips with Eclipse(Eclipse调试Java的10个技巧) .
- 问题集合 ---- linux 静态库和动态库