5

nginx の背後でイカサーバーを実行しようとしています。次のようにnginxを構成しました:

server {
    listen     8080;
    location / {
        proxy_pass   http://localhost:3128;
        proxy_set_header Host  $host;
        proxy_set_header X-Real-IP   $remote_addr;
    }
}

次に、http ネットワーク プロキシを次のように設定します。

my-nginx-server-address:8080

したがって、Google ホームページを表示しようとすると、nginx は次のリクエストを受け取ります。

Get http://www.google.com/ HTTP/1.1

ただし、nginx がリクエストを squid に渡すと、request_uri が次のように変更されます。

/

だからイカは効かない。request_uri をhttp://www.google.comに戻してから squid に渡す方法はありますか? または、nginx の背後で squid を実行できる他の方法はありますか?

4

1 に答える 1

1

proxy_set_header Request-URI $request_uri; を試してください。

あなたのコメントへの返信として、以下を追加することもできます:

upstream _squid { server localhost:3128; } server { ... proxy_pass http://_squid/$host$uri; }

于 2012-06-14T11:05:15.623 に答える