Pengoptimuman prestasi Nginx dan tetapan keselamatan
Nginx ialah pelayan web, pelayan proksi dan pengimbang beban yang biasa digunakan dengan prestasi unggul, keselamatan dan kebolehpercayaan, serta boleh digunakan untuk aplikasi web beban tinggi. Dalam artikel ini, kami akan meneroka tetapan pengoptimuman prestasi dan keselamatan Nginx.
1. Pengoptimuman prestasi
- Melaraskan parameter worker_processes
worker_processes ialah parameter penting Nginx. Ia menyatakan bilangan proses pekerja yang boleh digunakan. Nilai ini perlu dilaraskan berdasarkan faktor seperti perkakasan pelayan, lebar jalur rangkaian, jenis beban, dsb. Secara umum, tetapan boleh dibuat berdasarkan bilangan teras CPU atau keupayaan pemprosesan pelayan. Jika CPU pelayan mempunyai berbilang teras, nilai worker_processes boleh ditetapkan kepada 2 kali atau 3 kali ganda bilangan teras.
Sebagai contoh, jika pelayan mempunyai 8 teras CPU, anda boleh menetapkan worker_processes kepada 16 atau 24.
- Laraskan parameter worker_connections
worker_connections ialah satu lagi parameter penting Nginx. Ia menentukan bilangan sambungan serentak yang boleh dikendalikan oleh satu proses pekerja. Nilai ini juga perlu diselaraskan berdasarkan faktor seperti perkakasan pelayan, lebar jalur rangkaian, jenis beban, dsb. Secara umum, tetapan boleh dibuat berdasarkan saiz memori pelayan. Jika memori pelayan cukup besar, worker_connections boleh ditetapkan kepada nilai yang sangat besar untuk meningkatkan keupayaan pemprosesan serentak Nginx.
Sebagai contoh, jika saiz memori pelayan ialah 16GB, anda boleh menetapkan worker_connections kepada 16,384 atau 32,768.
- Dayakan caching
Nginx boleh mengurangkan permintaan kepada pelayan bahagian belakang dengan mendayakan caching. Mendayakan caching boleh meningkatkan kelajuan tindak balas tapak web dan keupayaan pemprosesan serentak. Contohnya, jika kandungan halaman di tapak anda tidak berubah untuk satu tempoh masa, respons untuk halaman tersebut boleh dicache supaya pada kali seterusnya anda memintanya, respons boleh diperoleh terus daripada cache.
Mendayakan caching boleh dicapai dalam dua cara berikut:
① Berdasarkan modul proxy_cache: cache boleh disimpan dalam cakera keras tempatan atau dalam cache yang diedarkan.
② Berdasarkan cache FastCGI: terutamanya perlu menggunakan arahan fastcgi_cache dan fastcgi_cache_path.
- Mampatkan data tindak balas
Nginx menyokong pemampatan kandungan tindak balas untuk mengurangkan penggunaan lebar jalur rangkaian dan meningkatkan kelajuan tindak balas tapak web. Mendayakan pemampatan gzip boleh mengurangkan saiz kandungan respons dengan ketara, sekali gus meningkatkan kelajuan pemuatan tapak web anda.
Mendayakan pemampatan gzip boleh dicapai dalam dua cara berikut:
① Berdasarkan modul gzip: Anda boleh mendayakan pemampatan gzip dengan menetapkan gzip pada arahan dalam fail nginx.conf.
② Berdasarkan modul pihak ketiga: seperti modul ngx_brotli, modul ngx_deflate, dsb.
- Menyajikan fail statik
Nginx boleh digunakan sebagai pelayan fail statik dan boleh memberikan respons pantas dan keupayaan pemprosesan serentak yang tinggi untuk fail statik. Jika tapak web terutamanya menyediakan muat turun fail statik atau perkhidmatan pecutan CDN, anda boleh secara khusus mendayakan satu contoh Nginx untuk mengendalikan permintaan fail statik, dan satu lagi contoh Nginx untuk mengendalikan permintaan halaman dinamik.
- Menggunakan protokol HTTP/2
HTTP/2 ialah versi terkini protokol HTTP, yang menyediakan penghantaran data yang lebih cekap dan kelajuan pemuatan halaman web yang lebih pantas. Mendayakan HTTP/2 boleh dicapai dalam dua cara berikut:
① Berdasarkan SSL/TLS: Protokol HTTPS mesti digunakan dan sijil SSL/TLS yang sah mesti dipasang.
② Modul HTTP/2 Nginx: Anda boleh mendayakan protokol HTTP/2 dengan memasang modul HTTP/2 Nginx.
2. Tetapan keselamatan
- Cegah serangan DDoS
Serangan DDoS ialah kaedah serangan rangkaian biasa, yang boleh menyebabkan pemberhentian perkhidmatan dan ketepuan lebar jalur dll. soalan. Nginx boleh menghalang serangan DDoS dengan cara berikut:
① Tingkatkan parameter max_connections: anda boleh mengehadkan bilangan maksimum sambungan untuk satu alamat IP.
② Pasang modul sambungan: seperti ngx_http_limit_conn_module dan ngx_http_limit_req_module, yang boleh menghalang serangan DDoS dengan mengehadkan bilangan sambungan dan kadar permintaan.
③ Gunakan penyedia CDN: Menggunakan perkhidmatan CDN boleh mengurangkan beban pada tapak asal dengan menyimpan kandungan statik pada nod tepi CDN, dengan itu meningkatkan keupayaan untuk menahan serangan DDoS.
- Cegah SQL Injection
SQL injection ialah kaedah biasa untuk menyerang aplikasi web, yang boleh mendapatkan maklumat sensitif dengan menyuntik kod SQL berniat jahat ke dalam aplikasi web atau mengawal pangkalan data . Nginx boleh menghalang suntikan SQL dengan cara berikut:
① Gunakan tembok api aplikasi web: Anda boleh menyemak dan menapis data input dengan memasang tembok api aplikasi web.
② Semak fail yang dimuat naik: Anda boleh menggunakan modul ngx_http_upload_module Nginx untuk menyemak fail yang dimuat naik.
③ Gunakan pertanyaan SQL yang selamat: Serangan suntikan SQL boleh dicegah dengan menggunakan pertanyaan berparameter, pembolehubah mengikat, kawalan kebenaran, dsb.
- Cegah serangan XSS
Serangan XSS ialah kaedah serangan aplikasi web yang biasa ia boleh mendapatkan maklumat dan kawalan pengguna dengan memasukkan skrip hasad ke dalam penyemak imbas atau serangan pengguna pengguna lain. Nginx boleh menghalang serangan XSS dengan cara berikut:
① Periksa dan tapis data input: Anda boleh menggunakan tembok api aplikasi web untuk memeriksa dan menapis skrip berniat jahat.
② Gunakan kaedah pengekodan selamat: Anda boleh menggunakan HTML melarikan diri atau pengekodan JavaScript untuk mengelakkan pelaksanaan skrip berniat jahat.
Ringkasnya, Nginx ialah pelayan web yang cekap dan selamat Ia boleh meningkatkan prestasi dengan melaraskan parameter konfigurasi, mendayakan caching dan pemampatan, menyediakan fail statik, dsb., dan boleh menghalang serangan DDoS, suntikan SQL dan serangan XSS. dan kaedah lain untuk memastikan keselamatan laman web. Oleh itu, apabila membina aplikasi web, adalah disyorkan untuk memberi keutamaan untuk menggunakan Nginx sebagai pelayan web dan pengimbang beban.
Atas ialah kandungan terperinci Pengoptimuman prestasi Nginx dan tetapan keselamatan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Soalan: Bagaimana untuk memulakan nginx? Jawapan: Pasang Nginx Startup Nginx Verification Nginx adalah nginx mula meneroka pilihan permulaan lain secara automatik Mula nginx

Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Untuk menutup perkhidmatan nginx, ikuti langkah -langkah berikut: Tentukan jenis pemasangan: Red Hat/CentOS (status SistemCTL nginx) atau debian/ubuntu (status nginx) menghentikan perkhidmatan: Red Hat/CentOS (SystemCtl Stop Nginx) atau Debian/Ubuntu (perkhidmatan Nginx) (Syst

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Pelayan tidak mempunyai kebenaran untuk mengakses sumber yang diminta, mengakibatkan ralat NGINX 403. Penyelesaian termasuk: Periksa keizinan fail. Semak konfigurasi .htaccess. Semak konfigurasi Nginx. Konfigurasikan keizinan Selinux. Semak peraturan firewall. Menyelesaikan masalah lain seperti masalah penyemak imbas, kegagalan pelayan, atau kesilapan lain yang mungkin.

Langkah -langkah untuk memulakan Nginx di Linux: Periksa sama ada Nginx dipasang. Gunakan SistemCTL Mula Nginx untuk memulakan perkhidmatan Nginx. Gunakan SistemCTL Dayakan NGINX untuk membolehkan permulaan automatik Nginx pada permulaan sistem. Gunakan Status SistemCTL Nginx untuk mengesahkan bahawa permulaan berjaya. Lawati http: // localhost dalam pelayar web untuk melihat halaman selamat datang lalai.

Di Linux, gunakan arahan berikut untuk memeriksa sama ada nginx dimulakan: Hakim status SistemCTL Nginx berdasarkan output arahan: Jika "Aktif: Aktif (Running)" dipaparkan, Nginx dimulakan. Jika "aktif: tidak aktif (mati)" dipaparkan, nginx dihentikan.

Jawab kepada Soalan: 304 Tidak diubahsuai ralat menunjukkan bahawa penyemak imbas telah cache versi sumber terkini permintaan klien. Penyelesaian: 1. Kosongkan cache penyemak imbas; 2. Lumpuhkan cache penyemak imbas; 3. Konfigurasi nginx untuk membolehkan cache pelanggan; 4. Periksa keizinan fail; 5. Semak fail hash; 6. Lumpuhkan CDN atau cache proksi terbalik; 7. Mulakan semula nginx.


Alat AI Hot

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

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

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

SecLists
SecLists ialah rakan penguji keselamatan muktamad. Ia ialah koleksi pelbagai jenis senarai yang kerap digunakan semasa penilaian keselamatan, semuanya di satu tempat. SecLists membantu menjadikan ujian keselamatan lebih cekap dan produktif dengan menyediakan semua senarai yang mungkin diperlukan oleh penguji keselamatan dengan mudah. Jenis senarai termasuk nama pengguna, kata laluan, URL, muatan kabur, corak data sensitif, cangkerang web dan banyak lagi. Penguji hanya boleh menarik repositori ini ke mesin ujian baharu dan dia akan mempunyai akses kepada setiap jenis senarai yang dia perlukan.

ZendStudio 13.5.1 Mac
Persekitaran pembangunan bersepadu PHP yang berkuasa