2017-01-13 7 views
0

lighttpdでプロキシ+リライトを設定しようとしています。lighttpdリダイレクトして内部サーバに書き換えます

私は2つの別々のサーバーにプロキシをリバースしようとしています。最初のファイルはルート(192.168.1.198:7000)にあり、2番目のファイルは/ ram /ディレクトリ(192.168.1.197:8000)からアクセスされます。私はlighttpdのバージョン1.4.38-1を使用しており、アップグレードのオプションはありません。

以下は私のlighttpd.configの関連部分です、私は誰かが私のエラーを私に指摘することを望んでいる!

$SERVER["socket"] == ":82" { 
    url.rewrite-once = ("^/ram/(.*)$" => "/$1") 
    proxy.server = ("" => (
    "" => 
     ("host" => "192.168.1.197", 
     "port" => 8000 
    ) 
    ) 
) 
} 
else $HTTP["host"] == "subdomain.example.com" { 
    proxy.balance = "hash" 
    proxy.server = ("" => (("host" => "192.168.1.198", "port" => 7000))) 

    $HTTP["url"] =~ "(^/ram/)" { 
    proxy.server = ("" => (
     "" => 
     ("host" => "127.0.0.1", 
      "port" => 81 
     ) 
    ) 
    ) 
    } 
} 

答えて

0

参考までに、3つのバックエンドプロキシサーバーが構成されていますが、2つではありません。

また、サーバーのポート:82へのクライアントからのすべての要求は、最初の条件ブロックによって処理されます。 'else $ HTTP ["host"] == "subdomain.example.com"'は、lighttpdサーバーのポート:82に接続しているクライアントには見られません。

Host:subdomain.example.comですべてのリクエストをその条件ブロックの指示に従わせたい場合は、最初の条件($ SERVER)に「else」を付けずに、そのセクションをスタンドアロンの「if」にします。 ["socket"] == ":82")

関連する問題