重点在于启用mod_proxy模块,去掉前面的;号
% a$ n Y e) w, I 请编辑lighttpd.conf,( T6 ~9 y7 E- N9 o* |2 }+ ?7 Y# \6 A
找到:
+ ]# z+ q& _+ e' s4 Hserver.modules = {% a6 L( T$ T/ `% L: G
$ x. p2 D( A! D. w/ Z# l$ }然后在里面加一句:
$ x; n. v& q. J, z" l( X& G"mod_proxy",& H) o8 w2 ]- P' d( d: C8 ^
/ B3 e: u* ^! A4 c- D. }+ _( Z
然后添加反向代理配置代码,如:+ z; m$ R- b1 N8 g+ Z' Z: W
[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" ) ) ) 3 [* Z& U* y/ {. Z
以下是实例代码:* W6 v& d/ y- D( G8 L& Z& Z
[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 )
)
)
}
- @7 y+ t7 F+ U, Z- j6 v8 P5 a% U9 L
以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:
1 h( W* l, Y. |% c/ [% i, u[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 )))
}
}
& `% n2 Q+ T2 C以上配置在lighttpd 1.4.x中测试通过。
/ C5 g K: W0 _ O
- m$ _& k% y- T/ l; N+ ]代理 81 端口的服务 到 xxx.domain.com:
+ N0 {. ?; e6 ~6 o" z[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
( o& W; U6 r0 c/ j1 E' E
* k, I% ]- S+ T |