Requisiti: Usa nginx per bloccare alcuni IP dall'accesso a siti web, come crawler, pubblicità, ecc. Oppure, per motivi politici, devi bloccare l'accesso da un indirizzo IP in un certo paese.
Accesso IP specificato a blocchi
Nginx fornisce due dei comandi più basilari per il mascheramento e il permesso agli IP: negare il blocco e permettere di permettere, come segue:
Specificare la directory per bloccare l'accesso da IP specificati
Nel file di configurazione di Nginx, puoi usare blocchi di posizione per abbinare percorsi URL specifici. Ad esempio, vogliamo abilitare il mascheramento nei percorsi URL che iniziano con /foo, abbinando tutti i percorsi URL che iniziano con /foo, come /foo/bar e /foo/baz/qux, ecc., come segue:
Se vuoiCorrispondenza esatta /fooper utilizzare la seguente configurazione:
Puoi anche abbinare la directory con i regex:
Blocca l'accesso al paese (regione) specificato.
A volte vogliamo permettere solo a determinate regioni di accedere al nostro sito web. Conoscendo i due metodi sopra menzionati, il problema residuo è come ottenere tutti i segmenti IP in una certa regione. Possiamo ottenerlo da ip2location. Indirizzo:Il login del link ipertestuale è visibile.
Seleziona il paese sul lato sinistro della scatola, seleziona V4 o V6 nella casella centrale e seleziona il tipo di regola a destra. Prendiamo il Giappone come esempio:
Scarica e scomprimi per ottenere il file txt,Elimina la prima posizione / { e l'ultima },Infine, aggiungi una linea per permettere tutto;Cambia il nome del suffisso da .txt a .conf e caricalo sul server, ricordando la directory dove è stato posizionato. (ad esempio /usr/local/nginx/conf/nginx.conf/firewall.conf)
Modifica il file di configurazione Nginx corrispondente al sito, come la directory /foo, per permettere l'accesso solo da IP non giapponesi:
Se vuoi che sia a livello sito, puoi scrivere nel server o nel campo http, ad esempio:
Poi inserisci il seguente comando per ricaricare la configurazione nginx:
|