Požiadavky: Použite nginx na zablokovanie niektorých IP adres, ktoré nepristupujú na webové stránky, ako sú crawlery, reklamy a podobne. Alebo z dôvodov politiky musíte zablokovať prístup z IP adresy v určitej krajine.
Blokujte špecifikovaný IP prístup
Nginx poskytuje dva z najzákladnejších príkazov na maskovanie a povolenie IP: deny to block a allow to allow, nasledovne:
Špecifikovať adresár na blokovanie prístupu zo špecifikovaných IP adries
V konfiguračnom súbore Nginx môžete použiť bloky polohy na porovnanie konkrétnych URL ciest. Napríklad chceme povoliť maskovanie v URL cestách začínajúcich na /foo, ktoré zodpovedajú všetkým URL cestám začínajúcim na /foo, ako sú /foo/bar a /foo/baz/qux a podobne, nasledovne:
Ak chcešPresná zhoda /foopoužiť nasledujúcu konfiguráciu:
Adresár môžete tiež porovnať s regexom:
Zablokujte prístup k určenej krajine (regiónu).
Niekedy chceme povoliť prístup len určitým regiónom. Keď poznáme vyššie uvedené dve metódy, zostávajúcim problémom je, ako dostať všetky IP segmenty do určitej oblasti. Môžeme to získať z IP2Location. Adresa:Prihlásenie na hypertextový odkaz je viditeľné.
Vyberte krajinu na ľavej strane políčka, v strednom poli V4 alebo V6 a typ pravidla vpravo. Vezmime si napríklad Japonsko:
Stiahnite a rozbalte, aby ste získali txt súbor,Vymažte prvú lokalitu / { a poslednú },Nakoniec pridajte riadok povoliť všetko;Zmeňte názov prípony z .txt na .conf a nahrajte ho na server, pričom si pamätáte adresár, kde bol umiestnený. (napr. /usr/local/nginx/conf/nginx.conf/firewall.conf)
Upravte konfiguračný súbor Nginx zodpovedajúci lokalite, napríklad adresár /foo, aby povolil prístup len z ne-japonských IP adries:
Ak chcete, aby to bolo na celej stránke, môžete napríklad zapisovať do servera alebo http poľa:
Potom zadajte nasledujúci príkaz na opätovné načítanie konfigurácie nginx:
|