重点在于启用mod_proxy模块,去掉前面的;号3 A) o; l2 d N! z4 ?) v
请编辑lighttpd.conf,& _8 j" W* A" F
找到:& @) B! B. o2 v) W, ?
server.modules = {( v' ]2 p" G- K! s
6 G8 S+ M2 r, n8 N: o
然后在里面加一句:! G' Y( X- R9 w* M
"mod_proxy",
; N" }, X5 X% l6 o2 N. y3 r& o5 O3 J! ^2 @: C
然后添加反向代理配置代码,如:0 Q% H: l( e O; p
[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" ) ) ) - F9 U R6 F. z! o5 F" |8 l
以下是实例代码:
9 n% h5 Q z& k5 U# W[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 )
)
)
}
: I& `' K7 Z9 l7 F2 }
2 ]8 c F: @9 n; d% T以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:
" i) H; Q# F5 w- }% T7 ?[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 )))
}
}
- ?8 ~( O; h4 U" m. `6 l
以上配置在lighttpd 1.4.x中测试通过。0 |2 x7 [3 ]2 s* J; \
% V0 g) Q3 \. n3 w1 c' Z0 B$ T- o代理 81 端口的服务 到 xxx.domain.com:
! r x. R7 C8 p2 G. t0 P1 O' t' O[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
- ]5 S: E$ \! Y$ B8 W/ d9 Q0 D N% X: |/ W Z6 n
|