Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 1021|Svare: 1

[Web] (Svarteliste) Nginx blokkerer innenlandske og utenlandske IP-adresser fra å få tilgang til nettsteder

[Kopier lenke]
Publisert 6.6.2025 09:07:44 | | | |
Krav: Bruk nginx for å blokkere noen IP-adresser fra å få tilgang til nettsteder, som crawlere, annonser osv. Eller av politiske grunner må du blokkere tilgang fra en IP-adresse i et bestemt land.

Blokker spesifisert IP-tilgang

Nginx gir to av de mest grunnleggende kommandoene for maskering og tillate IP-adresser: nekt å blokkere og la tillate, som følger:

Spesifiser katalog for å blokkere tilgang fra angitte IP-adresser

I Nginx sin konfigurasjonsfil kan du bruke lokasjonsblokker for å matche spesifikke URL-stier. For eksempel ønsker vi å aktivere maskering i URL-stier som starter med /foo, og matche alle URL-stier som starter med /foo, som /foo/bar og /foo/baz/qux, osv., som følger:

Hvis du vilEksakt match /foofor å bruke følgende konfigurasjon:

Du kan også matche katalogen med regex:

Blokker tilgangen til det angitte landet (regionen).

Noen ganger vil vi bare tillate visse regioner å få tilgang til nettsiden vår. Når man kjenner til de to ovennevnte metodene, er det gjenværende problemet hvordan man får alle IP-segmentene i et bestemt område. Vi kan hente det fra ip2location. Adresse:Innloggingen med hyperkoblingen er synlig.

Velg landet på venstre side av boksen, velg V4 eller V6 i midtboksen, og velg regeltypen til høyre. Ta Japan som et eksempel:



Last ned og pakk ut for å få txt-filen,Slett den første plasseringen / { og den siste }Til slutt, legg til en line allow all;Endre navnet på suffikset fra .txt til .conf og last det opp til serveren, og huske mappen det ble plassert i. (f.eks. /usr/local/nginx/conf/nginx.conf/firewall.conf)



Endre Nginx-konfigurasjonsfilen som tilsvarer nettstedet, for eksempel /foo-katalogen, slik at den kun tillater tilgang fra ikke-japanske IP-adresser:

Hvis du vil at det skal være site-wide, kan du skrive til server- eller http-feltet, for eksempel:

Deretter skriver du inn følgende kommando for å laste inn nginx-konfigurasjonen på nytt:




Foregående:X++ forespørsel https-grensesnitt "Mislykkedes i å opprette SSL/TLS sikker kanal"-problem
Neste:Jenkins (8) deaktiverer sending av anonyme bruksstatistikker
 Vert| Publisert 27.10.2025 09:50:08 |
Kun visse IP-adresser har tilgang til, skrevet i lokasjonsblokken, og definert som følger:
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com