重点在于启用mod_proxy模块,去掉前面的;号
. {# g: D9 _$ _' J0 @: \# J& V2 A 请编辑lighttpd.conf,
3 k9 w/ M- e! e; [4 \* R 找到:$ y3 d' u" N y7 l
server.modules = {# k8 u: j* U3 K6 ?! A! V' E5 @
' E0 x5 _0 Z/ v2 |% v/ t然后在里面加一句:4 [& c& X6 J {/ R
"mod_proxy",3 O# R5 M" z" A" I L7 E
! r7 k# S+ ~1 C" j( l7 S+ U
然后添加反向代理配置代码,如:
5 Y6 G' G( f- E: v- S[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" ) ) ) # ]) O9 O: u2 ]+ |8 E7 ^
以下是实例代码:
8 @+ N& K8 d5 j9 ~; @$ L: d[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 )
)
)
}
/ j9 L" ^* _* l" K" r5 N
( T" D# e' O1 n- F$ M( g以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:: e+ ~ C8 [/ M% {
[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 )))
}
}
+ m" P: H# y4 M) t4 k/ w以上配置在lighttpd 1.4.x中测试通过。) p# u9 k j3 c9 _# j' a: s% `
0 N4 N. }! W1 _8 G' p
代理 81 端口的服务 到 xxx.domain.com:
' p n5 v( z3 P[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
4 f9 y& N, w6 H r
) f% @' H8 `& G: v- J! k$ } |