


Bagaimana Nginx melaksanakan konfigurasi kawalan akses berdasarkan IP sumber permintaan
Cara Nginx melaksanakan konfigurasi kawalan akses berdasarkan IP sumber permintaan memerlukan contoh kod khusus
Dalam pembangunan aplikasi rangkaian, melindungi pelayan daripada serangan berniat jahat adalah langkah yang sangat penting. Menggunakan Nginx sebagai pelayan proksi terbalik, kami boleh mengkonfigurasi kawalan akses IP untuk menyekat akses kepada alamat IP tertentu untuk meningkatkan keselamatan pelayan. Artikel ini akan memperkenalkan cara melaksanakan konfigurasi kawalan akses berdasarkan IP sumber permintaan dalam Nginx dan memberikan contoh kod khusus.
Pertama, kita perlu mengedit fail konfigurasi Nginx. Biasanya, fail ini terletak di /etc/nginx/nginx.conf. Dalam fail ini, kita boleh mencari blok yang dipanggil "http", yang mengandungi konfigurasi Nginx global. Kita perlu menambah kod berikut pada blok:
http { # 定义一个名为“block_ip”的map,用于存储需要屏蔽的IP地址 map $remote_addr $block_ip { default 0; # 默认情况下,不屏蔽任何IP地址 192.168.0.100 1; # 需要屏蔽的IP地址,值设为1 192.168.0.101 1; # 需要屏蔽的IP地址,值设为1 } # 定义一个名为“block_ips”的变量,通过内部重定向的方式使用“block_ip”进行判断 set $block_ips ""; if ($block_ip = 1) { set $block_ips "block"; } # 在server块中添加访问控制配置,只允许没有被屏蔽的IP地址访问 server { listen 80; server_name example.com; # 添加对block_ips变量值的判断 if ($block_ips = "block") { return 403; } } }
Dalam kod di atas, kami mula-mula menentukan peta bernama "block_ip" untuk menyimpan alamat IP yang perlu disekat. Secara lalai, ia ditetapkan kepada 0, yang bermaksud tiada alamat IP disekat. Kami boleh menetapkan alamat IP tertentu kepada 1 seperti yang diperlukan, menunjukkan bahawa alamat IP perlu disekat.
Seterusnya, kami mentakrifkan pembolehubah bernama "block_ips" dan menggunakan "block_ip" untuk pertimbangan melalui ubah hala dalaman. Pertama, kami menetapkan pembolehubah kepada kosong. Kemudian, gunakan pernyataan if untuk menentukan sama ada nilai "block_ip" adalah sama dengan 1. Jika ya, tetapkan "block_ips" kepada "block".
Akhir sekali, konfigurasi kawalan akses ditambah dalam blok pelayan. Kami menggunakan arahan dengar untuk menentukan nombor port pendengaran, dan arahan nama_server untuk menentukan nama domain atau alamat IP. Dalam pernyataan if, kami menentukan sama ada nilai "block_ips" adalah sama dengan "block". Jika ya, kembalikan respons 403 Forbidden.
Kod di atas hanyalah contoh dan hanya digunakan untuk menunjukkan cara melaksanakan konfigurasi kawalan akses berdasarkan IP sumber permintaan dalam Nginx. Sila buat konfigurasi yang sesuai mengikut keperluan sebenar, seperti menambah alamat IP yang perlu disekat, mengubah suai nombor port pendengaran dan nama domain, dsb.
Ringkasnya, Nginx boleh melaksanakan kawalan akses dengan mudah berdasarkan IP sumber permintaan dengan menggunakan peta dan pembolehubah. Dengan membuat konfigurasi yang sepadan dalam fail konfigurasi, kami boleh menyekat akses kepada alamat IP tertentu, dengan itu meningkatkan keselamatan pelayan.
Atas ialah kandungan terperinci Bagaimana Nginx melaksanakan konfigurasi kawalan akses berdasarkan IP sumber permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undress AI Tool
Gambar buka pakaian secara percuma

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Buat bekas di Docker: 1. Tarik Imej: Docker Pull [Nama Cermin] 2. Buat bekas: Docker Run [Options] [Mirror Name] [Command] 3. Mulailah bekas: Docker Start [Nama Container]

Nginx dan Apache adalah pelayan web yang kuat, masing -masing dengan kelebihan dan kekurangan yang unik dari segi prestasi, skalabilitas dan kecekapan. 1) Nginx berfungsi dengan baik apabila mengendalikan kandungan statik dan terbalik proxying, sesuai untuk senario konvensional yang tinggi. 2) Apache melakukan lebih baik apabila memproses kandungan dinamik dan sesuai untuk projek yang memerlukan sokongan modul yang kaya. Pemilihan pelayan harus ditentukan berdasarkan keperluan dan senario projek.

Nginx lebih sesuai untuk mengendalikan sambungan serentak yang tinggi, manakala Apache lebih sesuai untuk senario di mana konfigurasi kompleks dan sambungan modul diperlukan. 1.Nginx dikenali dengan prestasi tinggi dan penggunaan sumber yang rendah, dan sesuai untuk kesesuaian yang tinggi. 2.apache terkenal dengan kestabilan dan sambungan modul yang kaya, yang sesuai untuk keperluan konfigurasi kompleks.

Nginx dan Apache masing -masing mempunyai kelebihan dan kekurangan mereka sendiri, dan pilihannya harus berdasarkan keperluan khusus. 1.Nginx sesuai untuk senario konvensional yang tinggi kerana seni bina yang tidak menyekatnya. 2. Apache sesuai untuk senario rendah-concurrency yang memerlukan konfigurasi kompleks, kerana reka bentuk modularnya.

Kod PHP boleh dilaksanakan dengan banyak cara: 1. Gunakan baris arahan untuk terus memasukkan "nama fail php" untuk melaksanakan skrip; 2. Masukkan fail ke dalam direktori root dokumen dan mengaksesnya melalui penyemak imbas melalui pelayan web; 3. Jalankannya dalam IDE dan gunakan alat debugging terbina dalam; 4. Gunakan kotak pasir PHP dalam talian atau platform pelaksanaan kod untuk ujian.

Memahami laluan fail konfigurasi Nginx dan tetapan awal sangat penting kerana ia adalah langkah pertama dalam mengoptimumkan dan menguruskan pelayan web. 1) Laluan fail konfigurasi biasanya /etc/nginx/nginx.conf. Sintaks boleh didapati dan diuji menggunakan arahan NGINX-T. 2) Tetapan awal termasuk tetapan global (seperti pengguna, worker_processes) dan tetapan HTTP (seperti termasuk, log_format). Tetapan ini membolehkan penyesuaian dan lanjutan mengikut keperluan. Konfigurasi yang salah boleh membawa kepada isu prestasi dan kelemahan keselamatan.
