在 debian etch 上配置 lighttpd 反向代理虚拟主机

前几天在 debian etch 上配置了一个 apache2 反向代理虚拟主机,因为不能实现代理到应用服务器的负载均衡,所以感觉不太完美。今天配置了一下 lighttpd,发现用 lighttpd 实现反向代理虚拟主机比用 apache2 还要简单,而且实现负载均衡也很容易。早知如此,就不捣鼓 apache2 了。

debian etch 中有 lighttpd 这个包,直接 apt-get 就可以安装了。

安装之后,运行一下:

lighty-enable-mod proxy

就打开 proxy 扩展了。

编辑 /etc/lighttpd/conf-enabled/10-proxy.conf,加入:

$HTTP["host"] =~ "gatetest.(ujn.edu.cn|ujn.cn|ujn6.edu.cn|ujn.org.cn)" {
 
proxy.balance = "hash"
 
proxy.server  = ( "" => ( ( "host" => "10.0.0.10" ),
                            
( "host" => "10.0.0.11" ),
                            
( "host" => "10.0.0.12" ),
                            
( "host" => "10.0.0.13" ) ) )

这样的配置信息就可以了。

至于 lighttpd.conf 文件,可以去掉一些模块和配置,一般只需要保留这些就可以了:

server.modules             = ( "mod_accesslog" )
server.document-root       = "/var/www/"
server.errorlog            = "/var/log/lighttpd/error.log"
accesslog.filename         = "/var/log/lighttpd/access.log"
server.pid-file            = "/var/run/lighttpd.pid"
server.dir-listing         = "disable"
server.username            = "www-data"
server.groupname           = "www-data"
include_shell "/usr/share/lighttpd/include-conf-enabled.pl"

如果要允许 IPv6,可以加入:

server.use-ipv6 = "enable"

选项。

以上配置就实现了一个反向代理。这种方式配置的话不需要修改 /etc/hosts,而且能够实现负载均衡,相当不错。不过 debian 的 lighttpd 包是不带 mod_cache 这个模块的,因为这个模块是第三方模块,需要打补丁自己编译。为了方便,我重新编译了 lighttpd 的 debian 包,这个包里已经包含了 mod_cache 模块了,只需要安装好之后,只需要执行一下:

lighty-enable-mod cache

就可以开启 cache 模块了。

编译好的带 cache 模块的 lighttpd 包可以在这里下载:lighttpd_1.4.13-4_i386.deb.zip

标签: Linux

« 上一篇 | 下一篇 »

只显示10条记录相关文章

发表评论

评论 (必须):