重点在于启用mod_proxy模块,去掉前面的;号, ]; a* v# P) D, n
请编辑lighttpd.conf,
7 t2 _# s. J& Y& a3 W- d3 Q 找到:+ l. e* w$ y3 K. B) Z1 @+ C
server.modules = {
+ O5 `+ Q5 \! J) [; P
( c: @2 p3 K" X4 G! d: u然后在里面加一句:4 e4 m3 }6 _ ]0 z1 R( Q
"mod_proxy",
1 `) Q5 a( Q' a" y t. _
7 U- C5 _' P: M9 }2 B然后添加反向代理配置代码,如:. Y$ l* E5 m6 @ F% {7 s6 H( 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" ) ) )
. X. f, o g9 |3 |3 @1 z k以下是实例代码:2 G% J/ H% }+ p7 Q B( u
[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 )
)
)
} # W6 g# V. s3 Z8 K7 o
# \* x( E# q" i" i
以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:2 I3 G( V/ x) r- P! k t5 c
[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 )))
}
}
$ p# c* K+ {- M4 R& E
以上配置在lighttpd 1.4.x中测试通过。
0 b5 |; }+ o$ w7 h( |. R- O" n) R3 v3 |8 a2 |. r4 e
代理 81 端口的服务 到 xxx.domain.com:# _) `1 b( } C2 z7 w
[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
( N# I4 n9 q9 M- i
- b) g( L+ r9 ~' l+ w- r5 y |