Nginx利用Lua+Redis實現動態封禁IP的方法

佚名發表於2018-12-14
文章主要介紹了Linux系統下Nginx支援ipv6的方法,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一、檢視現有nginx是否支援ipv6

需要執行以下命令,檢視現有nginx是否支援ipv6,如果引數中具有--with-ipv6,則支援,如 果沒有,則不支援,需要重新編譯nginx。

  1. # 此處的nginx路徑以您實際的nginx啟動檔案路徑為準
  2. /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 執行檔案:

  1. sudo cp /usr/local/nginx-1.14.0/sbin/nginx /usr/local/nginx-1.14.0/sbin/nginx.old

6、make之後進入安裝資料夾下的 objs 資料夾下;

  1. cd objs

7、停掉原來的nginx服務,覆蓋掉原來的 nginx 執行檔案後,啟動nginx服務:

  1. sudo /usr/local/nginx-1.14.0/sbin/nginx -s stop
  2. sudo cp nginx /usr/local/nginx-1.14.0/sbin/nginx
  3. sudo /usr/local/nginx-1.14.0/sbin/nginx

補充:

同時監聽IPV4和IPV6

  1. server {
  2. ....
  3. listen [::]:80;
  4. ...
  5. }

只監聽IPV6

  1. server {
  2. ....
  3. listen [::]:80 default ipv6only=on;
  4. ...
  5. }

監聽指定IPV6地址

  1. server {
  2. ....
  3. listen [3608:f0f0:3002:31::1]:80;
  4. ...
  5. }

以上就是Nginx利用Lua+Redis實現動態封禁IP的方法的全部內容,希望對大家的學習有所幫助,

相關文章