モジュール ngx_stream_geoip_module
| 構成例 ディレクティブ geoip_country geoip_city geoip_org |
ngx_stream_geoip_moduleモジュール(1.11.3)は、プリコンパイルされたMaxMindデータベースを使用して、クライアントのIPアドレスに応じて値を持つ変数を作成します。
IPv6に対応したデータベースを使用する場合、IPv4アドレスはIPv4マッピングされたIPv6アドレスとして検索されます。
このモジュールは、デフォルトではビルドされていません。--with-stream_geoip_module構成パラメータで有効にする必要があります。
このモジュールはMaxMind GeoIPライブラリが必要です。
構成例
stream {
geoip_country GeoIP.dat;
geoip_city GeoLiteCity.dat;
map $geoip_city_continent_code $nearest_server {
default example.com;
EU eu.example.com;
NA na.example.com;
AS as.example.com;
}
...
}
ディレクティブ
| 構文 |
geoip_country |
|---|---|
| デフォルト | — |
| コンテキスト |
ストリーム |
クライアントのIPアドレスに応じて国を決定するために使用されるデータベースを指定します。このデータベースを使用する場合、次の変数を使用できます
$geoip_country_code- 2文字の国コード、たとえば「
RU」、「US」。 $geoip_country_code3- 3文字の国コード、たとえば「
RUS」、「USA」。 $geoip_country_name- 国名、たとえば「
ロシア連邦」、「アメリカ合衆国」。
| 構文 |
geoip_city |
|---|---|
| デフォルト | — |
| コンテキスト |
ストリーム |
クライアントのIPアドレスに応じて国、地域、都市を決定するために使用されるデータベースを指定します。このデータベースを使用する場合、次の変数を使用できます
$geoip_area_code- 電話番号のエリアコード(米国のみ)。
対応するデータベースフィールドは非推奨となったため、この変数は古い情報を含む場合があります。
-
$geoip_city_continent_code - 2文字の大陸コード、たとえば「
EU」、「NA」。 $geoip_city_country_code- 2文字の国コード、たとえば「
RU」、「US」。 $geoip_city_country_code3- 3文字の国コード、たとえば「
RUS」、「USA」。 $geoip_city_country_name- 国名、たとえば「
ロシア連邦」、「アメリカ合衆国」。 $geoip_dma_code- Google AdWords APIのジオターゲティングに従って、米国のDMA地域コード(「メトロコード」としても知られています)。
$geoip_latitude- 緯度。
$geoip_longitude- 経度。
$geoip_region- 2文字の国地域コード(地域、領土、州、県、連邦管轄区など)、たとえば「
48」、「DC」。 $geoip_region_name- 国地域名(地域、領土、州、県、連邦管轄区など)、たとえば「
モスクワ市」、「コロンビア特別区」。 $geoip_city- 都市名、たとえば「
モスクワ」、「ワシントン」。 $geoip_postal_code- 郵便番号。
| 構文 |
geoip_org |
|---|---|
| デフォルト | — |
| コンテキスト |
ストリーム |
クライアントIPアドレスによって組織を判断するために使用する、データベースを指定します。このデータベース使用時に以下の変数が使用できます。
$geoip_org- 例えば、"The University of Melbourne"のような組織名です。