一、檢視現有nginx是否支援ipv6
需要執行以下命令,檢視現有nginx是否支援ipv6,如果引數中具有--with-ipv6,則支援,如 果沒有,則不支援,需要重新編譯nginx。
# 此處的nginx路徑以您實際的nginx啟動檔案路徑為準
/usr/local/nginx-1
.14.0
/sbin/nginx
-V
二、 重新編譯nginx支援ipv6
1、下載相對應的nginx安裝包;
2、解壓nginx的安裝包;
3、進入nginx解壓後的安裝檔案中,先執行 ./configure 命令,後面新增上上面 /usr/local/nginx-1.14.0/sbin/nginx -V 獲得的引數,並再新增 --with-ipv6 引數,執行;
4、執行make命令,千萬別執行 make install 命令,否則就把原來的nginx給覆蓋了;
5、備份原來路徑下的 nginx 執行檔案:
sudo
cp
/usr/local/nginx-1
.14.0
/sbin/nginx
/usr/local/nginx-1
.14.0
/sbin/nginx
.old
6、make之後進入安裝資料夾下的 objs 資料夾下;
cd
objs
7、停掉原來的nginx服務,覆蓋掉原來的 nginx 執行檔案後,啟動nginx服務:
sudo
/usr/local/nginx-1
.14.0
/sbin/nginx
-s stop
sudo
cp
nginx
/usr/local/nginx-1
.14.0
/sbin/nginx
sudo
/usr/local/nginx-1
.14.0
/sbin/nginx
補充:
同時監聽IPV4和IPV6
server {
....
listen [::]:80;
...
}
只監聽IPV6
server {
....
listen [::]:80 default ipv6only=on;
...
}
監聽指定IPV6地址
server {
....
listen [3608:f0f0:3002:31::1]:80;
...
}
以上就是Nginx利用Lua+Redis實現動態封禁IP的方法的全部內容,希望對大家的學習有所幫助,