重点在于启用mod_proxy模块,去掉前面的;号
3 ?* d. i Z! d4 g$ K/ M4 { 请编辑lighttpd.conf,9 b7 ^6 i, y# @. Z
找到:
' s) G5 ? Q' @7 kserver.modules = {. K6 f$ R1 \% {# m) K3 s. M
7 B, C* d# t k9 E) T
然后在里面加一句:
: m1 T: V _4 e( E" h& l"mod_proxy",/ o$ y. T6 r, q4 a" i& l1 _0 D& z
1 ~2 Y! J+ B, t$ M: [然后添加反向代理配置代码,如:
* J. R+ A8 c2 Y0 ]/ @3 U# k[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" ) ) ) 0 ]9 U' w. K* s2 i
以下是实例代码:. `& J& u2 [+ N* D3 I
[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 )
)
)
} 4 w. {, J( l. ~" m; u" W! _# `3 g
S" v$ _) y T: c, c以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:, r& |' e1 L5 c" _2 ?4 A! W9 O
[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 )))
}
}
1 O7 p* J- p/ R6 K6 v. O' N以上配置在lighttpd 1.4.x中测试通过。
0 t3 l' w" x% g6 i, i7 {8 B. J7 o# P! c5 s9 Y1 m0 L
代理 81 端口的服务 到 xxx.domain.com:9 [ `' J# G' E) g6 _
[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
* a& d4 v* c3 q: E' F
9 |( R9 q$ [! ?. a |