- 浏览: 2073722 次
- 性别:
- 来自: NYC
文章分类
- 全部博客 (628)
- Linux (53)
- RubyOnRails (294)
- HTML (8)
- 手册指南 (5)
- Mysql (14)
- PHP (3)
- Rails 汇总 (13)
- 读书 (22)
- plugin 插件介绍与应用 (12)
- Flex (2)
- Ruby技巧 (7)
- Gem包介绍 (1)
- javascript Jquery ext prototype (21)
- IT生活 (6)
- 小工具 (4)
- PHP 部署 drupal (1)
- javascript Jquery sort plugin 插件 (2)
- iphone siri ios (1)
- Ruby On Rails (106)
- 编程概念 (1)
- Unit Test (4)
- Ruby 1.9 (24)
- rake (1)
- Postgresql (6)
- ruby (5)
- respond_to? (1)
- method_missing (1)
- git (8)
- Rspec (1)
- ios (1)
- jquery (1)
- Sinatra (1)
最新评论
-
dadadada2x:
user模型里加上 protected def email ...
流行的权限管理 gem devise的定制 -
Sev7en_jun:
shrekting 写道var pattern = /^(0| ...
强悍的ip格式 正则表达式验证 -
jiasanshou:
好文章!!!
RPM包rpmbuild SPEC文件深度说明 -
寻得乐中乐:
link_to其实就是个a标签,使用css控制,添加一个参数: ...
Rails在link_to中加参数 -
aiafei0001:
完全看不懂,不知所然.能表达清楚一点?
"$ is not defined" 的问题怎么办
前段时间服务器硬盘坏了,导致提供镜像下载的服务终止,年前硬件虽修好。但发现提供下载的FTP配置丢失,重新配置比较麻烦。又考虑到原提供FTP下载时,存在不少的弊端,特别是暴力破解攻击的问题很严重,导致系统日志不正常的暴涨,故决定直接提供http链接算了。我一直觉得lighttpd是相当不错的Web服务端软件,特别是对于静态文件的处理效率相当高,资源占用很少。实际使用中,需解决的几个问题是:
2、可分析来源地址,由于网络架构前端用的是Squid 2.6做反向代理,客户访问后端的服务器时默认只记录了前端的IP,这给分析访问的客户信息带来麻烦。
3、lighttpd自带简单的状态监控工具,激活它吧。
基础配置部分就不再说明了,请搜索我之前的日志吧。以上问题解决并不复杂,提及一些重要部分即可。
一、限速
lighttpd从1.3.8开始就支持限速功能,还支持plugin等。更详细的信息,请看:Lighttpd - Docs-TrafficShaping
限速功能在Core中即有提供,不需要启动额外的模块,可用两个设定:
Limit the throughput for each single connection to the given limit in kbyte/s
Default: 0 (no limit)
限制单个连接可使用的带宽,默认值是0,不限制
server.kbytes-per-second
Limit the throughput for all connections to the given limit in kbyte/s
Default: 0 (no limit)
对某个域、或链接路径限制可用的总带宽
需要注意的是:
2、单连接的限制无法防止使用迅雷、快车等多并发工具下载的情况,所以需要同时控制对整个域或路径的最大带宽;
3、控制的单位是KBytes/sec ;
4、由于存在TCP send buffer的情况,一般实际数据会比限制的数据要高一点。
例如,lighttpd.conf中有:
connection.kbytes-per-second = 30
$HTTP["host"] == "download.linuxfly.org" {
server.name = "download.linuxfly.org"
server.document-root = "/var/www/html/iso"
accesslog.filename = "/var/log/lighttpd/iso-access.log"
$HTTP["url"] =~ "^/download/" {
dir-listing.activate = "enable"
#/download路径下可用的最大是100KB/s
server.kbytes-per-second = 100
}
#除/download路径外,该域可用的最大带宽是200KB/s
server.kbytes-per-second = 200
}
对特定客户端或plugin的使用,请参考上面官方网站WiKi上的说明。
◎ 意外
限速后,可能更多的朋友会使用多线程的下载工具来加速。此时,可能会发现系统日志报错:
2009-02-04 17:39:02: (connections.c.603) connection closed:
原因是,lighttpd是个单线程的服务器,所以受到Linux的单线程允许打开文件数的资源限制。
在lighttpd配置文件中,需要加入(默认1024):
此外,系统本身也有限制,查看Linux的最大文件描述符:
Red Flag DC Server release 5.0 (Trinity SP2)
# cat /proc/sys/fs/file-nr
580 0 131072
三个值的意思分别是:
0:总共的空闲的文件描述符的数量
131072:最大能打开的文件描述符的数量
修改:
或加入/etc/sysctl.conf文件中。
二、与Squid的配合
我的网络架构是:
默认在lighttpd的accesslog里面,是无法记录透过Squid(或Apache的mod_proxy)过来的用户ip地址的,而全记录的是Squid(或Apache机器)的代理网关ip地址。在我们需要分析客户端来源信息时,就需要做些设定了。
1、Squid配置
修改/etc/squid/squid.conf配置文件,确认下面的设置:
url_rewrite_host_header off
更详细,请看这里:[原]配置Squid 2.6实现反向代理
2、lighttpd设置
把mod_accesslog模块打开,然后修改accesslog格式,即有:
#### accesslog module
accesslog.filename = "/var/log/lighttpd/access.log"
accesslog.format = "%{X-Forwarded-For}i %v %u %t \"%r\" %s %b \"%{User-Agent}i\" \"%{Referer}i\""
其中”%{X-Forwarded-For}i 就是记录了用户来源的ip地址,这里日志与Apache combined相同。
三、监控状态
lighttpd的mod_status是可以提供server-status监控页面的,需要在配置文件中加入:
status.status-url = "/server-status"
status.config-url = "/server-config"
status.statistics-url = "/server-statistics"
重启lighttpd服务后,访问
http://ip/server-config
http://ip/server-statistics
页面即可:
其他可选参数,请见:Lighttpd - Docs-ModStatus
※ lighttpd更多可用的模块说明,请见这里:Wiki Modules Documentation
发表评论
-
在ubuntu中.profile 和.bashrc的加载区别
2013-06-01 21:38 2530总之,profile不只是bash,在启动加载 bashrc是 ... -
command line tools for linux
2013-02-14 23:49 1469du -sh `ls .` for i in G M K; ... -
ubuntu 12.10 proxy install package apt-get
2013-01-31 06:47 1208#/.bashrc export http_proxy= ... -
查找多文件内容替换
2012-09-14 20:58 1494UPDATE: (05/03/2013) 当前使用: # ... -
shell script
2012-09-11 21:08 1038select r.name, count(p.id) from ... -
定期清空日志文件
2012-09-11 10:04 3347一个关于如何在指定文件大于1GB后,自动删除的问题。 批处理代 ... -
查看一个进程占用了那个端口
2012-09-11 09:59 1718有时候需要在Linux下查看一个进程占用了那个端口,但是只知道 ... -
utf8 ruby1.9
2012-07-13 01:57 1334引用invalid byte sequence in utf- ... -
VIM下跳转的区别
2012-05-06 00:33 1390VIM在开tag和jumplist的时候有几个差别 经常用的 ... -
shell command
2012-04-11 21:42 924ls -l . | egrep -c '^d' ls -l . ... -
unbuntu 查看什么占着80端口
2012-01-19 12:37 1437sudo lsof -i :80 sudo nets ... -
处理僵尸进程
2011-05-27 01:45 1173#!/bin/sh kill -HUP `ps -A - ... -
ubuntu 看硬件配置
2011-05-02 02:03 5285总是忘记阿,标记一下 sudo lspci -v lshw ... -
no such file to load -- zlib
2011-04-25 23:52 2755或者提示 fatal error: zlib.h: No su ... -
新装的mysql出现无法登陆的问题 er 1405 参考下面的解决
2011-01-23 12:39 3085Installing MySQL 5.0 First we ... -
ssh无密码登入设置
2010-08-17 21:02 1400现有2台机器 1、服务器192.168.1.112 2、个人机 ... -
bash和乱码
2010-08-16 00:15 1907几个bash下配置的区别 1)/etc/profile: 此文 ... -
ubuntu 配置git服务器及其它
2010-08-15 23:46 2175update: 生产public key的时候不能按照git ... -
nohup命令让程序在后台运行-linux
2010-02-04 14:17 7046nohup ruby /sunrise/www/realwor ... -
shell 条件可能用到
2010-01-26 15:05 1532为什么不能用ruby脚本写啊,shell脚本写的俺很烦啊... ...
相关推荐
《lighttpd-1.4.20-cmake:轻量级HTTP服务器的构建与配置详解》 在互联网服务领域,HTTP服务器是不可或缺的一部分,它们负责处理来自客户端的HTTP请求并返回相应的网页内容。其中,lighttpd因其轻量、高效、安全的...
《lighttpd-1.4.30:轻量级Web服务器的配置与应用》 lighttpd是一款轻量级的Web服务器,以其高效的性能、低内存占用和丰富的功能而受到许多开发者的青睐。在本篇文章中,我们将深入探讨lighttpd-1.4.30版本的特性和...
Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的web server环境。具有非常低的内存开销,cpu占用率低,效能好,以及丰富的模块等特点。lighttpd是...
在下载的压缩包中,"LightTPD-1.4.16-Win32.exe"是LightTPD的Windows版本安装程序。安装过程中,用户通常需要选择安装路径、配置服务器端口、设置默认文档根目录等。安装完成后,通过修改配置文件(通常是`lighttpd....
《lighttpd-1.4.45:轻量级Web服务器的魅力解析》 lighttpd,这个名字在Web服务器领域中或许不如Apache或Nginx那样耳熟能详,但其独特的轻量级特性和高效性能,使得它在特定场景下成为理想的解决方案。lighttpd-...
这是一个可在安卓手机上布置的服务器环境,功能组件包括:lighttpd、php和mysql,能成功运行DZ等php程序,安装和配置过程十分简单,也许现在该是讨论用什么手机做服务器更合适的时候了。 演示图片为一成功运行的...
交叉编译最新版的lighttpd-1.4.55,配置与测试CGI与HTML.内含 lighttpd-1.4.55源码,移植教程,cgi测试代码,html测试代码.测试cgi时,浏览器中应该输入192.168.100.30/cgi-bin/xx.cgi .其中 192.168.100.30为开发板的ip
### Lighttpd基础入门——状态机与插件 #### 一、Lighttpd概述 Lighttpd是一款轻量级的Web服务器软件,以其极低的内存占用率、高效率及丰富的扩展性受到开发者们的青睐。它支持诸如FastCGI、CGI、认证(Auth)、输出...
4. **状态查询**:可以编写一个`status-lighttpd.sh`脚本检查lighttpd服务的状态,通常通过检查进程是否存在来实现。 5. **配置文件验证**:在启动前,使用`lighttpd -t -f /path/to/lighttpd.conf`命令验证配置文件...
《lighttpd-1.4.59:轻量级HTTP服务器的安装与配置详解》 lighttpd,一个在互联网领域广泛应用的轻量级Web服务器,因其高效、安全、易扩展的特性,深受开发者喜爱。本文将详细介绍lighttpd-1.4.59版本的安装过程...
自己在cygwin下编译的源码,并指定的默认配置文件路径和lib路径, 编译环境windows xp 32位 gcc version 4.9.2 (GCC) 编译参数: ./configure --prefix=XXXX --without-bzip2 配置文件为从源码dco/config目录获取后...
自己在cygwin下编译的源码,并指定的默认配置文件路径和lib路径, 编译环境windows7 64位 gcc version 5.4.0 (GCC) 编译参数: ./configure --prefix=XXXX --without-bzip2 配置文件为从源码dco/config目录获取后进行...
这是一个可在安卓手机上布置的服务器环境,功能组件包括:lighttpd、php和mysql,能成功运行DZ等php程序,安装和配置过程十分简单,也许现在该是讨论用什么手机做服务器更合适的时候了。演示图片为一成功运行的...
学习心得,分享出来供大家学习。docker镜像构建,中间件mysql、lighttpd、Nginx、squid配置和启动、dubbo服务部署
四、安装与配置lighttpd-1.4.39 1. 下载与解压:首先从lighttpd官方网站下载lighttpd-1.4.39.tar.gz,然后使用tar命令解压。 2. 编译安装:运行configure脚本进行配置,指定安装路径,然后执行make和make install。...
最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载最新lighttpd-1.4.28源码下载
在进行lighttpd的安装与配置之前,我们需要确保一些必要的库已经安装完成。根据提供的部分文件内容来看,主要涉及到了以下几步: 1. **安装libtool**:`yum -y install libtool` - `libtool`是一个帮助开发者创建...
### Lighttpd安装与配置详解 #### 一、前言 Lighttpd是一款开源的、高性能的、符合标准的Web服务器软件,适用于Unix-like系统,包括Linux、BSD、Solaris等。它以其轻量级、高效率的特点,在处理高并发连接方面表现...
总的来说,lighttpd-1.4.18是一个兼顾性能与效率的Web服务器解决方案,尤其适合对资源有严格限制的场景。它的轻量级特性、模块化设计和丰富的安全功能,使得它在众多Web服务器中脱颖而出,成为小型和中型网站的理想...
《lighttpd-1.4.32:轻量级Web服务器的魅力与应用》 在互联网服务领域,Web服务器作为互联网应用的基础架构组件,扮演着至关重要的角色。lighttpd,一个以轻量级、高性能著称的Web服务器,自其诞生以来就深受开发者...