重点在于启用mod_proxy模块,去掉前面的;号
& Z; T! S1 Q+ U) [2 v- ]* u 请编辑lighttpd.conf,2 d$ z1 I$ q. q( L: c
找到:1 u5 U1 V4 U' _! X# \5 A! ~. Z
server.modules = {: E- ]8 |; m+ o2 {9 F, L
& K2 P5 g( ]. B$ u9 x) \, n5 _8 e
然后在里面加一句:
" S3 x# @( k9 U& q1 c. D"mod_proxy",
2 W- y9 |! A3 r8 d0 u
, I: ^: |" |9 R; Z7 d然后添加反向代理配置代码,如:% |' {: R1 z9 v' ^9 [
[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" ) ) )
# r! [7 ^. C/ A- x/ B以下是实例代码:6 k0 o5 Y! x+ }4 q. ~
[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 )
)
)
}
; m- \+ X* A/ d4 O* X- O1 }* y+ F$ d3 j" @7 a
以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:8 D' `. S+ n$ P( h$ u, ]6 n) E
[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/ B& p( _% l) N( ?
以上配置在lighttpd 1.4.x中测试通过。8 c, m1 r3 M. _' @6 m8 M
3 u2 P/ a/ F- z! o7 M7 r7 r3 w代理 81 端口的服务 到 xxx.domain.com:5 ?' V5 _: P. O5 }7 G1 x7 Y
[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
2 N& {/ D: d1 G# a% v1 K5 i( K6 |2 x6 T
|