重点在于启用mod_proxy模块,去掉前面的;号7 H9 `; m* Y2 Z+ K; R
请编辑lighttpd.conf,4 R/ z. r6 m) u. B( J7 E
找到:
3 }/ P) q" W; X" userver.modules = {
/ e4 Q# g9 U7 J" P6 C9 D2 k: x9 ^/ d7 C; H
然后在里面加一句:0 C$ w2 ?$ E+ r1 N& d; k& V
"mod_proxy",1 {% R i( r; s, F
4 l: {8 P: N0 _. q V4 L5 s, x1 L
然后添加反向代理配置代码,如:
! s* w+ Z+ a* K1 A+ o1 A[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" ) ) ) ) e( h a+ R4 M/ D$ _$ f
以下是实例代码:
1 w: X9 w: L% i/ A' ^! s[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 )
)
)
} ) \6 e$ |+ m) [( c8 ^, q3 \3 o2 p
" }) y$ B, j ?/ j9 x' G以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:
3 I7 g' J2 x4 o7 W4 _- n[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 )))
}
}
( u. q: X6 Y% b3 j$ [$ g4 n以上配置在lighttpd 1.4.x中测试通过。
. \+ [ V2 y! h- `' F9 ]9 \5 N. [; x
代理 81 端口的服务 到 xxx.domain.com:
6 m p# n/ k! ?' d3 v' d[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
0 d* [3 f. b& p" z
^4 k6 N/ O, ~3 c; m |