Lighttpd 是一个德国人领导的开源Web服务器软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销、cpu占用率低、效能好以及丰富的模块等特点。
Lighttpd是众多OpenSource轻量级的web server中较为优秀的一个。支持FastCGI,CGI,Auth,输出压缩(output compress),URL重写,Alias等重要功能;而Apache之所以流行,很大程度也是因为功能丰富,在lighttpd上很多功能都有相应的实现了,这点对于apache的用户是非常重要的,因为迁移到lighttpd就必须面对这些问题
Security, speed, compliance, and flexibility -- all of these describe lighttpd (pron. lighty) which is rapidly redefining efficiency of a webserver; as it is designed and optimized for high performance environments. With a small memory footprint compared to other web-servers, effective management of the cpu-load, and advanced feature set (FastCGI, SCGI, Auth, Output-Compression, URL-Rewriting and many more) lighttpd is the perfect solution for every server that is suffering load problems. And best of all it's Open Source licensed under the revised BSD license.
为什么使用Lighttpd,从性能方面来说,首先考虑单进程与多进程问题,这也是我为什么不想使用Apache的原因,多进程服务器的惊群问题,简单来说多进程服务(例如Apache)在一个请求发送时候会唤醒所有sleep的进程,但是最终服务的只有一个,在进程数目很多,请求频繁的时候这会造成一个大困扰,系统会忙于切换进程,如果看Top会发现CPU使用在system的比例很高,至于Lighttpd则使用单进程来响应 quest,使用 libevent,poll()作为event handler,如果在linux2.4下,还可以选择rtsig作为event handler。如果不使用大文件(>4G)支持,lighttpd使用sendfile()来发送文件,完全的zero-copy,在这方面性能表现是占优的。同时Lighttpd使用FastCGI来做动态脚本处理,经过实测,在性能表现上也可以接受。
另外就是原先使用Apache的用户迁移成本会比较少,Lighttpd语法与Apache接近,并且核心功能基本实现,我关注的就是 url_rewrite,PHP(这是当然的),alias,custom_log这几个模块,语法接近,并且也同样支持跟cronolog的管道配合日志,所以迁移之后功能都可以实现。另外我比较了Apache和Lighttpd的Suexec方案,虽然目前Lighttpd并没有官方模块来支持这一特性,但是就实现的难度来看,跟 Apache1.3乃至Apache2+MPM差不多……(如果希望安全的使用Apache2+MPM+PHP,一样需要 FastCGI模式)
实用起来lighttpd确实非常不错,apache主要的问题是密集并发下,不断的fork()和切换,以及较高(相对于 lighttpd而言)的内存占用,使系统的资源几尽枯竭。而lighttpd采用了Multiplex技术,代码经过优化,体积非常小,资源占用很低,而且反应速度相当快。
利用apache的rewrite技术,将繁重的cgi/fastcgi任务交给lighttpd来完成,充分利用两者的优点,现在那台服务器的负载下降了一个数量级,而且反应速度也提高了一个甚至是2个数量级!
相关推荐
主要内容包括:lighttpd介绍与分析准备工作、lighttpd网络服务主模型、lighttpd数据结构、伸展树、日志系统、文件状态缓存器、配置信息加载、i/o多路复用技术模型、插件链、网络请求服务响应流程、请求响应数据快速...
以上就是lighttpd配置文件和启动脚本的基本介绍。在实际部署和运维过程中,需要根据具体需求对配置文件进行调整,并确保启动和停止脚本的可靠性,以确保Web服务器的稳定运行。理解并熟练掌握这些内容,对于管理和...
本教程将详细介绍如何使用lighttpd和CGI来搭建一个动态网页服务器。 1. **理解lighttpd** lighttpd是一个快速、安全且配置简单的HTTP服务器,特别适合于资源有限的环境。它的特性包括模块化设计、高性能的事件模型...
本文将围绕lighttpd的代码阅读资料,详细介绍其核心概念、设计架构以及如何有效地进行代码分析。 一、lighttpd的核心特性 1. 轻量级:lighttpd设计之初就注重资源效率,尤其是在内存使用上,使得它在处理大量并发...
Lighttpd源码分析就是一本介绍分析Lighttpd源码的初级读本,其主要目标在于:一方面让已经接触过网络编程的读者可以从Lighttpd这个开源项目中学习到更深入实际的网络编程知识,另一方面也可以让使用Lighttpd作为自己...
本文将详细介绍Lighttpd的安装与配置流程,重点涵盖pcre库的安装以及如何配置Lighttpd以支持复杂的正则表达式和Ruby语言。 #### 二、安装前准备:pcre库 pcre(Perl Compatible Regular Expressions)库提供了与...
本文将详细介绍如何在CentOS 6.x系统上安装并配置lighttpd。 1. **支持平台与编译环境** Lighttpd适用于多种操作系统平台,包括但不限于Linux(如FC3、SuSE、Debian、Gentoo、PLD-Linux和OpenWRT)、*BSD(FreeBSD...
- **回调接口介绍**: - `init`:插件初始化。 - `set_defaults`:设置默认配置。 - `handle_uri_raw`:处理原始URI。 - `handle_uri_clean`:处理清理后的URI。 - `handle_subrequest_start`:处理子请求开始...
本文将详细介绍lighttpd-1.4.59版本的安装过程以及基础配置,帮助读者深入理解这一开源HTTP服务器。 一、lighttpd简介 lighttpd是由德国开发者Jan Kneschke发起的项目,旨在提供一个快速、内存占用小且配置简单的...
下面将详细介绍这些组件以及如何进行集成安装。 首先,让我们详细了解一下每个组件: 1. **lighttpd**:Lighttpd是一个开源的Web服务器,以其速度、低内存占用和安全性而闻名。它特别适合于小到中等规模的网站或在...
虽然本文主要关注的是 Lighttpd,但为了完整性,也简单介绍一下如何安装 Apache。使用以下命令配置 Apache: ```sh ./configure --prefix=/usr/local/apache --enable-shared=max --enable-module=rewrite --enable...
本文将详细介绍如何在CentOS 5.5版本上安装并配置Lighttpd,以及如何为它添加PHP支持。 首先,确保你的系统是最新的。在终端中输入以下命令来更新你的CentOS系统: ```bash sudo yum update ``` 接下来,安装...
本文将详细介绍如何在Lighttpd服务器中配置FastCGI模块来运行Django应用,并且讲解如何同时运行多个Django应用。 首先,确保你已经安装了Lighttpd服务器和Django框架。Lighttpd支持FastCGI协议,这是一种让Web...
这里我们将重点介绍如何在使用Lighttpd作为web服务器的环境下通过重写规则实现WordPress的URL静态化处理。 首先,我们需要了解什么是URL重写。URL重写是一种通过服务器软件自动将一个请求的URL转换为另一个URL的...
软件介绍 一个轻量级的Web 服务器,支持FastCGI, CGI, Auth, 输出压缩(output compress), URL重写, Alias等重要功能。它具有非常低的内存开销,CPU占用率低,效能好,以及丰富的模块等特点,其静态文件的响应能力远...
本文将详细介绍如何为lighttpd服务器设置URL重写规则,以便正确地处理CodeIgniter框架生成的路由。 首先,我们需要了解lighttpd的URL重写机制。在lighttpd中,通过url.rewrite-once指令来定义重写规则。该指令接受...
本篇文章将详细介绍如何在Nginx、Apache和Lighttpd这三种流行的Web服务器上实现这一功能。 **Apache配置** 在Apache服务器上,我们可以使用`<Directory>`指令来限制指定目录内的PHP执行。以下是一个示例: ```...