重点在于启用mod_proxy模块,去掉前面的;号
: J+ u& v$ U7 s$ P3 f 请编辑lighttpd.conf,$ W! i2 |( ?! r7 T5 b! A* B
找到:% t' c. S2 K" M: {! L6 ?
server.modules = {
/ H1 ~% h [" V. n3 Q6 _+ i; i
; ^: C0 B# u! Y# K f然后在里面加一句:
' z; H0 p/ Q2 U+ i. y"mod_proxy",
) |) c {2 O, ?9 Q
! E! r A; C' c) ?5 [然后添加反向代理配置代码,如:
) Q% b! T. l( v% l& j[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" ) ) ) 9 d8 Q) I: n0 n, i
以下是实例代码:3 O4 S, {- e, k' Q& x. A
[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 )
)
)
}
. i0 s; p7 [: C7 w' ^! K& K
* M8 l1 e t! l" B m- `以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:4 ] P" D% ]4 h
[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 )))
}
}
; k; r( L- U8 G1 v5 ?
以上配置在lighttpd 1.4.x中测试通过。9 k4 A: l ~+ _$ `/ g
; w1 a w6 S0 P' U/ T( i
代理 81 端口的服务 到 xxx.domain.com:
! E; c$ A* U8 m[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
" }' ^# v2 Q4 g n. R
( r4 {2 C3 I$ k0 H P8 x2 D7 e& g
|