重点在于启用mod_proxy模块,去掉前面的;号 R+ M& B2 R1 X( y
请编辑lighttpd.conf,
9 X8 \$ z& A) S/ e0 O/ T 找到:; B: Z! b3 B, S) M* V t
server.modules = {8 S$ N& A; t& Y
: D7 E, j; f9 J( O" o- [+ N
然后在里面加一句:
2 h+ N2 q' \% ?7 S"mod_proxy",7 c8 a0 A' H: W
2 k4 w0 |% o" S+ |( R) ]然后添加反向代理配置代码,如:
' \& ^) z9 V% T$ ]2 c[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" ) ) ) " Z! T$ @; D$ q* {% X
以下是实例代码:8 j! O3 |0 [5 R6 g7 K0 j9 ^
[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 )
)
)
} , a& q1 W) I# [/ E
8 U7 @( ?5 R4 g4 P以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:2 x! W4 V$ Y3 H1 C9 q* \
[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 )))
}
}
, s% T) O7 W3 F' h1 g以上配置在lighttpd 1.4.x中测试通过。8 C6 H4 I5 r3 o5 c
5 h* q d! H8 p) G3 h& A
代理 81 端口的服务 到 xxx.domain.com:9 F2 G F$ ^# V" ?
[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
# X {: z3 M4 Q. o# G# T, f
% e ]: X8 Q7 g& P$ |) L/ J$ J |