重点在于启用mod_proxy模块,去掉前面的;号8 z) C( }: ^6 G5 F8 {
请编辑lighttpd.conf,
% Q* I: m' f2 z5 H 找到:2 E0 L, d; R `0 Q1 I8 B
server.modules = {
" g, `( |4 S& ~# a! \, I$ X6 v0 q, T. i# V. c
然后在里面加一句:
1 X, k) n( K2 [/ o"mod_proxy",
/ {# ?# P* M5 H0 v8 g+ ] O9 @9 U2 p' L) v# `
然后添加反向代理配置代码,如:( m3 P. N" c* M, f' q6 x6 ]3 h2 [
[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" ) ) ) ! Y4 m! I+ c' q- D/ v
以下是实例代码:
, z4 H4 x7 W e7 P[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 e7 P8 Q s& [1 W% c- F4 o
+ S. s3 Z+ y; L6 Q以下是一个配置文件,包含两个host,其中一个域全部被重定向到主域下:
# o6 A$ c; N6 G3 l[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 )))
}
}
/ v. ?+ p) o8 u6 x& N
以上配置在lighttpd 1.4.x中测试通过。
/ r6 e5 _+ ^7 K! o3 N! c; s
- g! N& E: F2 b' f1 b0 _/ H代理 81 端口的服务 到 xxx.domain.com:
7 {- ^0 D% f* I6 S L! L: w[AppleScript] 纯文本查看 复制代码 # lighttpd.conf
$HTTP["host"] == "xxx.domain.com" {
proxy.balance = "hash"
proxy.server = (""=>
(
("host" =>"127.0.0.1","port"=>81)
)
)
}
. C U, `9 x2 c0 |4 m( T+ `* y B* b# l e2 ^' P, l& v3 s) y
|