`
hupy
  • 浏览: 188899 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

lighttpd+modcache实现对小图片的Cache

阅读更多

安装环境
操作系统: CentOS release 5.2 (Final)
Kernel: 2.6.18-92.el5PAE

软件列表
fam-latest.tar.gz
gamin-0.1.10.tar.gz
pcre-7.9.tar.gz
lighttpd-1.4.23.modcache.v.1.8.0.tar.gz

软件存放位置
/data/software

安装过程
#cd /data/software/pkg
安装依赖插件pcre, fam, gamin
关于FAM http://oss.sgi.com/projects/fam/faq.html
关于gamin http://www.gnome.org/~veillard/gamin/overview.html
See also: http://trac.lighttpd.net/trac/wiki/server.stat-cache-engineDetails
#tar zxvf ../pcre-7.9.tar.gz
#cd pcre-7.9
#./configure
#make && make install
#cd ..
#tar zxvf ../fam-latest.tar.gz
#cd fam-2.7.0/
#./configure
#make && make install
#cd ..
#tar zxvf ../gamin-0.1.10.tar.gz
#cd gamin-0.1.10
#./configure
#make && make install

安装lighttpd with modcache
#cd /data/software/pkg
#tar zxvf ../lighttpd-1.4.23.modcache.v.1.8.0.tar.gz
#cd lighttpd-1.4.23
#./configure --with-fam --prefix=/usr/local/lighttpd
#make && make install

编辑lighttpd配置文件
#cp doc/lighttpd.conf /etc/
#vi /etc/lighttpd.conf

#启用的modules
server.modules              = (
                                "mod_redirect",
                                "mod_access",
                                "mod_status",
                                "mod_cache",
                                "mod_proxy",
                                "mod_compress",
                                "mod_expire",
                                "mod_accesslog" )

server.pid-file            = "/var/run/lighttpd.pid"

server.max-keep-alive-requests = 16
server.max-keep-alive-idle = 4
server.max-read-idle = 60
server.max-write-idle = 360

#使用epoll作为事件处理
server.event-handler = "linux-sysepoll"

#使用sendfile
server.network-backend = "linux-sendfile"

#修改最大file descriptions,跟squid相同
server.max-fds = 65535

#启用fam作为stat处理方法
server.stat-cache-engine = "fam"

#此项打开以后缓存文件时将忽略?,即a.jpg?xxx和a.jpg?xyz都等同于a.jpg
cache.support-queries = "enable"

#指定本地缓存存放路径
cache.bases = ("/srv/lcache")

#定义刷新
cache.refresh-pattern = (
        "\.(?i)(flv)$" => "0 fetchall-for-range-request flv-streaming", # to work with mod_flv_streaming for flv files
        "\.(?i)(js|css|xml)$" => "10080", # update js/css/xml every 7 days and on refresh requests
        "\.(?i)(htm|html|shtml)$" => "10080", # update html/htm/shtml every 7 days and on refresh requests
        "\.(?i)(jpg|bmp|jpeg|gif|png)$" => "60", # update graphics files every 2 hours
        "\.(?i)(rar|zip|wmv|avi|mp3|ape|rm|mpeg|mpg|wma|asf|rmvb|flv)$" => "0 fetchall-for-range-request", # cache media file forever
        "." => "60 update-on-refresh" # default to update every hour and on refresh requests
)

#允许purge的ip
cache.purge-host = "^(192\.168\.)"

#保存缓存时忽略站点主机名(需要多个站点缓存不同文件的不要启用)
cache.ignore-hostname = "enable"

#后端服务器(源站)
proxy.server               = ( "/" =>
                               ( "localhost" =>
                                 (
                                   "host" => "192.168.1.15",
                                   "port" => 80
                                 )
                               )
                             )

#这项一定要启用
proxy.worked-with-mod-cache = "enable"

#设置指定IP允许查看服务器状态和缓存命中率
$HTTP["remoteip"] =~ "192\.168\.1\.*" {
  status.status-url          = "/server-status"
  status.stastics-url        = "/cache-status"
}

#防盗链
$HTTP["referer"] !~ "^($|http://.*\.(baidu\.com|google\.com|google\.cn))" {
    url.redirect = ( ".*" => "http://img1.test.com/a.jpg" )
}

启动lighttpd
#/usr/local/lighttpd/sbin/lighttpd -f /etc/lighttpd.conf

参考文档
http://redmine.lighttpd.net/projects/1/wiki/Docs:Performance
http://blog.fosketts.net/2009/06/29/tuning-lighttpd-linux/
http://trac.lighttpd.net/trac/wiki/server.stat-cache-engineDetails

关于日志rotate和启动脚本
http://www.cyberciti.biz/tips/lighttpd-rotating-logs-with-logrotate.html
http://www.cyberciti.biz/tips/redhat-enterprise-linux-lighttpd-fastcgi-php.html

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://iyubo.blogbus.com/logs/42429307.html

分享到:
评论

相关推荐

    搭建lighttpd+cgi的代码包

    【搭建lighttpd+cgi的代码包】 在Web服务器领域,lighttpd是一个轻量级且高效的HTTP服务器,因其低内存占用和高速度而受到欢迎。CGI(Common Gateway Interface)则是一种标准,允许Web服务器执行外部程序并返回...

    lighttpd+mysql+php tar.gz安装包整合

    这里我们关注的是"lighttpd+mysql+php"的集成安装,特别适用于轻量级服务器需求,例如开发或测试环境。这个压缩包文件集合包含了在CentOS7系统上成功安装和测试的所有组件,包括lighttpd(一个轻量级HTTP服务器)、...

    phpLight(LightTPD+PHP集成包) v2014

    phpLight 2014 是网上首套LightTPD+PHP集成包,集成最新Lighttpd+PHP+MySQL+SQL-Front+Zend Guard Loader+XCache。纯绿色,安装后无需再配置。支持系统服务和非服务两种启动方式,自由切换。一次性安装无需再安装,...

    套件php 集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader

    这对于开发者来说非常方便,特别是对数据库操作不熟悉的初学者。 Zend Optimizer和Zend Loader是两个PHP扩展,由Zend Technologies开发。Zend Optimizer能够优化PHP代码,提高其执行效率,而Zend Loader则用于执行 ...

    在安卓中创建 lighttpd+mysql+php的服务器-almp7.zip

    在安卓中创建 lighttpd+mysql+php的服务器_almp7.zip

    phpLight 2013 网上首套LightTPD+PHP集成包

    phpLight 2013 是网上首套LightTPD+PHP集成包, 集成最新Lighttpd+PHP+MySQL+SQL-Front+Zend Guard Loader+XCache。 纯绿色,安装后无需再配置。支持系统服务和非服务两种启动方式,自由切换。 一次性安装无需再安装...

    Openwrt里架设Lighttpd+PhP5+MYSQL环境标准教程.pdf

    本教程旨在指导读者在Openwrt系统中架设Lighttpd+PhP5+MYSQL环境,实现Web服务器搭建。以下是相关知识点的详细解释: 一、硬件准备 * 路由器:需要一台路由器,内存至少64M,推荐128M以上。 * 优盘:需要一个优盘...

    lighttpd+php in android

    以下是对"lighttpd+php in android"这个主题的详细说明。 **Lighttpd** Lighttpd是一款开源、快速、低内存占用的HTTP服务器,特别适合资源有限的设备,如Android手机或平板电脑。它的设计目标是提供高效的服务,...

    phpStudy 最新 Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend 稳定 强大

    该程序包集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。该程序绿色小巧简易迷你仅有35M,有专门的控制面板。...

    veket5.3 搭建web平台建站 lighttpd + php + mysql for veket 一键安装包

    "/etc/init.d/lighttpd start" 启动lighttpd 直接访问 127.0.0.1 访问WEB 同时会在使用工具生成两个菜单,一个查看 phpinfo, 一个查看 lighttpd状态, 网站根目录在/var/www/ 下,php.ini 在 /etc/目录下, lighttpd....

    lighttpd的权限认证模块 mod_auth

    **lighttpd的权限认证模块 mod_auth** 在Web服务器领域,lighttpd以其轻量级、高效能的特点受到许多开发者和管理员的青睐。它提供了一系列模块来扩展其功能,其中`mod_auth`就是用于实现HTTP基本认证和摘要认证的...

    ubuntu lighttpd+webpy (fastcgi)配置方法

    在本文中,我们将深入探讨如何在Ubuntu操作系统上配置Lighttpd服务器与Webpy框架的集成,利用FastCGI技术实现高效动态网页服务。首先,确保已经安装了必要的组件,包括Lighttpd服务器、Webpy框架以及FastCGI支持。 ...

    Lighttpd__and_modcache.ppt

    Lighttpd是一款轻量级的Web服务器,以其高效、低资源消耗而闻名。它采用事件驱动的单进程模型,利用非阻塞I/O(网络)和writev(内存)以及sendfile(本地文件)来提高性能。由于其设计简单且模块化结构,Lighttpd在...

    ubuntu lighttpd实现websocket

    如何在ubuntu上实现lighttpd 1、下载mongoose使用mongoose中的example中的websocket_chat,实现websocket 2、websocket_chat源码下载路径 官网:https://cesanta.com 论坛:...

    varnish+lighttpd配置

    Varnish和Lighttpd是两个非常重要的开源Web服务器软件,它们在Web性能优化和负载均衡方面发挥着关键作用。Varnish作为一个高性能的HTTP缓存代理,常用于减轻后端服务器的压力,提高网站响应速度;而Lighttpd则是一款...

    lighttpd简单配置

    `mod_proxy`, `mod_redirect`, `mod_rewrite`, `mod_rrdtool`, `mod_scgi`, `mod_secdownload`, `mod_setenv`, `mod_simple_vhost`, `mod_ssi`, `mod_staticfile`, `mod_status`, `mod_trigger_b4_dl`, `mod_...

    lighttpd-1.4.45_lighttpd服务器_

    在lighttpd-1.4.45中,支持如FastCGI、mod_proxy、mod_rewrite等常见模块,可以轻松集成PHP、Python等脚本语言,实现动态内容的处理。 安全性方面,lighttpd-1.4.45同样表现出色。它内置了防止DoS攻击的机制,比如...

    web_share:通过Lighttpd分享文件,实现上传下载

    web_share通过Lighttpd分享文件,实现上传下载为什么用Lighttpd?因为它安装包小……为什么这么简陋?因为我菜。欢迎提PR来帮助我改进。这个项目意义何在?帮助不同设备之间传输文件。举个例子:手机和电脑要传文件...

    lighttpd配置和启动脚本

    4. **状态查询**:可以编写一个`status-lighttpd.sh`脚本检查lighttpd服务的状态,通常通过检查进程是否存在来实现。 5. **配置文件验证**:在启动前,使用`lighttpd -t -f /path/to/lighttpd.conf`命令验证配置文件...

Global site tag (gtag.js) - Google Analytics