Maison > Opération et maintenance > Nginx > le corps du texte

Comment les modules Nginx et GeoIP lisent les informations géographiques de l'IP

WBOY
Libérer: 2023-05-14 15:10:06
avant
1762 Les gens l'ont consulté

linux installation geoip

yum install nginx-module-geoip
Copier après la connexion

http_geoip_module scénarios d'utilisation

1. Différences entre le national et l'étranger Règles d'accès http

2. Différentes régions de la ville nationale pour les règles d'accès http

yum Après l'installation, recherchez le fichier du module installé

Si nginx utilise yun L'installation se fait généralement dans le répertoire /etc/nginx/modules/

Remarque : si nginx n'est pas installé par yum mais compilé et installé à partir du code source, vous devez réinstaller et compiler nginx et ajouter ceci module, puis il n'est pas nécessaire d'ajouter ce module manuellement.

Ajouter manuellement le module

Le module chargé en tête du fichier de configuration nginx.conf est au même niveau que http#🎜 🎜#

load_module "modules/ngx_http_geoip_module.so";
load_module "modules/ngx_stream_geoip_module.so";
Copier après la connexion

Parce que geoip est basé sur maxmind et fournit un fichier de base de données pour lire les informations régionales, vous devez télécharger le fichier ip régional.

Cette base de données est binaire et ne peut pas être ouverte avec un éditeur de texte. Elle nécessite la bibliothèque geoip ci-dessus pour être lue.

wget http://geolite.maxmind.com/download/geoip/database/geolitecountry/geoip.dat.gz #国家的地域ip
wget http://geolite.maxmind.com/download/geoip/database/geolitecity.dat.gz  #城市的地域ip
Copier après la connexion

Ensuite, décompressez

load_module "modules/ngx_http_geoip_module.so";
load_module "modules/ngx_stream_geoip_module.so";

.......


http{
geoip_country /etc/nginx/geoip/geoip.dat; #加载国家ip
geoip_city /etc/nginx/geoip/geolitecity.dat; #加载城市ip

.........

 server
 {
 ......



 location / {
 #判断如果不是中国的就返回403;
 if ($geoip_country_code != cn) {
  return 403;
 }
 }
 #返回国家城市信息
 location /myip {
 default_type text/plain;
 return 200 "$remote_addr $geoip_country_name $geoip_country_code $geoip_city";
 }



....
 }
}
Copier après la connexion
, puis visitez votre adresse IP/myip pour renvoyer les informations sur le pays et la ville où se trouve l'adresse IP.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!