Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana untuk mengkonfigurasi Nginx untuk mengalihkan trafik berdasarkan segmen IP terakhir permintaan

Bagaimana untuk mengkonfigurasi Nginx untuk mengalihkan trafik berdasarkan segmen IP terakhir permintaan

WBOY
WBOYke hadapan
2023-05-18 10:10:341155semak imbas

Terutamanya lompatan konfigurasi pertimbangan if dalam parameter lokasi boleh mengurangkan beban dan tekanan pelayan Ini adalah seni bina penggunaan pelayan yang sangat biasa.
Lompat mengikut julat segmen IP terakhir

#域名,ip,端口等信息请自行修改

upstream huaji-01.com {
 server 192.168.1.100:8080;
}

upstream huaji-02.com {
 server 192.168.1.200:8080;
}

server {

 listen 80;
 server_name www.huaji.com;

 location /
 {
  if ( $remote_addr ~* ^(.*)\.(.*)\.(.*)\.[1,125]$) {
    proxy_pass http://huaji-01.com;
    break;
  }

  proxy_pass http://huaji-02.com;
 }

}

Di atas adalah untuk memajukan sumber permintaan dengan segmen IP terakhir 1-125 ke huaji-01.com, dan permintaan lain ke huaji-02 .com, perkara yang sama boleh dilakukan Ubah suai peraturan biasa, seperti peraturan

: $remote_addr ~* ^(.*).(.*).(.*).*[0268]$ The hujung ialah IP nombor genap seperti 0268, lompat ke huaji- 01.com, yang lain melompat ke nama domain kedua;

Peraturan: $remote_addr ~* ^(112).(.*).(.* ).(.*)$ IP bermula dengan 112 Lompat ke nama domain yang ditentukan;

Peraturan: $http_x_forwarded_for ~* ^(112).(.*).(.*).(.*)$ mengalihkan trafik mengikut segmen alamat hadapan, bermula dengan 112 Lompat ke nama domain yang ditentukan

Maksud penghakiman bersyarat perintah if:

padanan ungkapan biasa, di mana:

~ ialah padanan sensitif huruf besar dan kecil

~* ialah padanan tidak sensitif huruf besar/kecil

!~ dan !~* ialah padanan tidak sensitif huruf besar dan huruf tidak sensitif

fail dan padanan Direktori, di mana:

-f dan !-f digunakan untuk menentukan sama ada fail itu wujud

-d dan !-d adalah digunakan untuk menentukan sama ada direktori

wujud -e dan !-e digunakan untuk menentukan sama ada fail atau direktori itu wujud

-x dan !-x digunakan untuk menentukan sama ada fail boleh laku

Parameter terakhir bagi arahan tulis semula ialah tanda bendera, tanda bendera ialah:

terakhir adalah bersamaan dengan tanda [l] dalam apache, yang bermaksud tulis semula.

rehat Selepas pemadanan peraturan ini selesai, pemadanan akan ditamatkan dan peraturan seterusnya tidak akan dipadankan lagi.

lencongan mengembalikan 302 ubah hala sementara, dan alamat penyemak imbas akan memaparkan alamat url selepas lompatan.

permanent returns 301 permanent redirect, dan alamat penyemak imbas akan memaparkan alamat url selepas lompatan.

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi Nginx untuk mengalihkan trafik berdasarkan segmen IP terakhir permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam