|
|
|
|
|
當(dāng)你的Nginx服務(wù)器想禁止某個(gè)IP或IP段訪問(wèn)時(shí),可以通過(guò)配置文件來(lái)達(dá)到目的,本文介紹兩種常用的方法。
Nginx禁止某IP(段)訪問(wèn)
Nginx配置訪問(wèn)IP可以修改nginx.conf文件,只需要在server
中添加allow
和deny
的IP即可,如下:
server {
listen 80;
server_name localhost;
allow all;
deny 123.123.123.123;
error_page 500 502 503 504 /50x.html;
}
注意!上面的配置中allow
必須在deny
的前面配置,不然allow
不生效。
Nginx中允許或者拒絕某個(gè)IP訪問(wèn)是這么寫(xiě)的:
allow 192.168.0.1;
deny 192.168.0.2;
如果你需要對(duì)整個(gè)IP段設(shè)置不允許訪問(wèn),可以這么寫(xiě):
deny 123.0.0.0/8; // 封 123.0.0.1~123.255.255.254 這個(gè)段的ip
deny 123.123.0.0/16; // 封 123.123.0.1~123.123.255.254 這個(gè)段的ip
deny 123.123.123.0/24; // 封 123.123.123.1~123.123.123.254 這個(gè)段的ip
deny all; // 封所有ip
說(shuō)明,allow
跟deny
配置相同,如果需要開(kāi)放某個(gè)IP段,只需要把上面的deny
改成allow
。
另外需要注意,該配置修改需要重啟Nginx服務(wù)器才能生效。
導(dǎo)讀:通俗易懂解釋IP段192.168.1.0/24和192.168.0.0/16
修改網(wǎng)站配置文件.htaccess來(lái)限制某IP(段)訪問(wèn)
除了修改Nginx配置文件之外,還可以通過(guò)修改網(wǎng)站配置文件.htaccess來(lái)限制某IP(段)訪問(wèn),方法如下。
將以下內(nèi)容保存為.htaccess文件,上傳至網(wǎng)站根目錄。如果原來(lái)已經(jīng)存在.htaccess文件的,將以下內(nèi)容加到該文件開(kāi)頭。
Order allow,deny
allow from all
deny from 123.123.123.123
如果要限制一個(gè)IP段,比如要限制123.123.123.*這個(gè)C段,則輸入:
Order allow,deny
allow from all
deny from 123.123.123
以上內(nèi)容表示拒絕123.123.123開(kāi)頭的所有IP,其他IP允許。
如果要限制多個(gè)IP段,中間用空格隔開(kāi),如:
Order allow,deny
allow from all
deny from 111.111.111 111.222.222 111.333.333
說(shuō)明,該配置不用重啟web服務(wù)器,修改立即生效。
此外,該方法適用任何web網(wǎng)站,例如IIS、Apache網(wǎng)站。
通過(guò)上述兩種方法,Nginx都可以實(shí)現(xiàn)禁止某IP(段)訪問(wèn)的目的,用哪種方法就看自己的具體情況了。