73

Nginx をプロキシとして使用して、アプリケーションへのリクエストをフィルタリングしています。「http_geoip_module」の助けを借りて、国コードの http ヘッダーを作成しています。「headers-more-nginx-module」を使用してリクエスト ヘッダーとして渡したいと考えています。これは、Nginx 構成のロケーション ブロックです。

location / {
    proxy_pass                      http://mysite.com;
    proxy_set_header                Host http://mysite.com;;
    proxy_pass_request_headers      on;
    more_set_headers 'HTTP_Country-Code: $geoip_country_code';
}

ただし、これは応答にヘッダーを設定するだけです。「more_set_headers」の代わりに「more_set_input_headers」を使用しようとしましたが、ヘッダーは応答に渡されません。

ここで何が欠けていますか?

4

3 に答える 3

119

変数をプロキシ バックエンドに渡したい場合は、プロキシ モジュールで設定する必要があります。

location / {
    proxy_pass                      http://example.com;
    proxy_set_header                Host example.com;
    proxy_set_header                HTTP_Country-Code $geoip_country_code;
    proxy_pass_request_headers      on;
}

そして、プロキシ バックエンドに渡されます。

于 2013-11-03T09:56:48.423 に答える