重点在于启用mod_proxy模块,去掉前面的;号
4 s$ }2 L* l, t0 Y 请编辑lighttpd.conf,$ ^; _& H/ N7 g* `% [5 U# W
找到:
3 [6 V- u+ K; P: G& Z. l) l3 J# w7 Iserver.modules = {5 m! h: ?9 ~2 E# @6 Q3 l
1 k5 c. m$ }4 C2 }
然后在里面加一句:
. X, F9 u% v6 }8 I"mod_proxy",
( e( |# Z! @! Z r
) M7 R: `- K5 t0 m3 \% v然后添加反向代理配置代码,如:. N6 o$ K4 D. B
[AppleScript] 纯文本查看 复制代码 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" ),
( "host" => "10.0.0.14" ),
( "host" => "10.0.0.15" ),
( "host" => "10.0.0.16" ),
( "host" => "10.0.0.17" ) ) )
! z1 e; t1 d# D: }: F" e$ e; P以下是实例代码:( h% F6 a' t# [/ h- A' f' T; n( K
[AppleScript] 纯文本查看 复制代码 server.modules = (
"mod_access",
"mod_status",
"mod_proxy",
"mod_accesslog" )
server.document-root = "/srv/www/htdocs/"
server.errorlog = "/var/log/lighttpd/error.log"
status.status-url = "/server-status"
$HTTP["url"] !~ "\.(js|css|gif|jpg|png|ico|txt|swf|html|htm)$" {
proxy.server = ( "" => (
( "host" => "10.10.10.87", "port" => 80 )
)
)
}
) M6 h) p* f& }. X1 u, X$ `
1 l$ R7 N8 ~, L/ X2 Q9 v以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:7 A/ X& R4 x7 P
[AppleScript] 纯文本查看 复制代码 server.modules += ( "mod_proxy" )
$HTTP["host"] == "liaoxuefeng.com" {
url.redirect = ( "^/(.*)" => "http://www.liaoxuefeng.com/$1" )
}
$HTTP["host"] == "www.liaoxuefeng.com" {
server.name = "www.liaoxuefeng.com"
server.document-root = "/srv/liaoxuefeng.com/www/"
accesslog.filename = "/srv/liaoxuefeng.com/log/access.log"
server.errorlog = "/srv/liaoxuefeng.com/log/error.log"
$HTTP["url"] !~ "^(favicon.ico|.*/static/.*)$" {
proxy.server = ( "" => (( "host" => "127.0.0.1", "port" => 8000 )))
}
}
$ e8 O# Y4 w w8 x2 w6 y, O
以上配置在lighttpd 1.4.x中测试通过。
2 P, T4 b" r' F0 Q- ^9 B3 s! c# r) C# |6 y, @: r8 y) B
代理 81 端口的服务 到 xxx.domain.com:
' _' p/ y; V$ P7 P; `[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
3 m( [& x4 m2 t' s
7 K) d) T H) t5 S5 t2 }& |6 R |