Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Analisis konfigurasi dan pengoptimuman Pengurus Proksi Nginx

Analisis konfigurasi dan pengoptimuman Pengurus Proksi Nginx

WBOY
WBOYasal
2023-09-26 09:24:222805semak imbas

Nginx Proxy Manager配置解析与优化

Analisis dan pengoptimuman konfigurasi Pengurus Proksi Nginx

Ikhtisar:

Pengurus Proksi Nginx ialah alat pengurusan proksi terbalik berasaskan Nginx yang boleh membantu kami mengkonfigurasi dan mengurus pelayan proksi songsang dengan mudah. Dalam proses menggunakan Pengurus Proksi Nginx, kami boleh meningkatkan prestasi dan keselamatan pelayan dengan menghuraikan dan mengoptimumkan konfigurasinya.

Analisis konfigurasi:

  1. Lokasi dan struktur fail konfigurasi:

Fail konfigurasi Pengurus Proksi Nginx terletak dalam direktori /etc/nginx/conf.d, dan fail konfigurasi setiap proksi terbalik berakhir dengan .conf . Fail konfigurasi terutamanya mengandungi alamat IP, nombor port, nama domain dan maklumat lain pelayan proksi.

  1. Analisis item konfigurasi asas:

Dalam fail konfigurasi, kita boleh melihat beberapa item konfigurasi asas, seperti yang ditunjukkan di bawah:

pelayan {

listen 80;
server_name example.com;

location / {
    proxy_pass http://backend;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
}

}

Antaranya, dengar tentukan nombor port_name; nama domain; lokasi menentukan laluan URL proxy_pass menentukan alamat pelayan belakang untuk dimajukan kepada proxy_set_header menetapkan maklumat pengepala permintaan.

  1. Analisis item konfigurasi lanjutan:

Dalam fail konfigurasi Pengurus Proksi Nginx, beberapa item konfigurasi lanjutan turut disokong untuk mengoptimumkan prestasi dan keselamatan pelayan. Berikut ialah beberapa item konfigurasi lanjutan biasa:

  • keepalive_timeout: Tetapkan masa penahanan sambungan dengan pelayan hujung belakang, lalai ialah 75s. Nilai ini boleh dilaraskan dengan sewajarnya untuk meningkatkan prestasi.
  • worker_connections: Tetapkan bilangan maksimum sambungan bagi setiap proses pekerja, lalai ialah 1024. Nilai ini boleh dilaraskan dengan sewajarnya untuk meningkatkan prestasi.
  • client_max_body_size: Tetapkan volum maksimum untuk menerima permintaan pelanggan, lalai ialah 1m. Anda boleh menetapkan nilai yang lebih besar mengikut keperluan sebenar untuk menyokong muat naik fail besar.
  • limit_req_zone: Tetapkan untuk mengehadkan kadar permintaan dan bilangan sambungan untuk mengelakkan permintaan berniat jahat dan serangan DDoS.
  1. Konfigurasi SSL/TLS:

Pengurus Proksi Nginx juga menyokong konfigurasi SSL/TLS untuk menyediakan komunikasi yang selamat. Berikut ialah beberapa item konfigurasi SSL/TLS biasa:

pelayan {

listen 443 ssl;
server_name example.com;

ssl_certificate /etc/nginx/ssl/cert.crt;
ssl_certificate_key /etc/nginx/ssl/cert.key;

location / {
    proxy_pass http://backend;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
}

}

Antaranya, ssl_certificate dan ssl_certificate_key tentukan laluan ke sijil SSL. Dengan mengkonfigurasi SSL/TLS, kami boleh menjamin penghantaran data antara pelanggan dan pelayan proksi.

Pengoptimuman konfigurasi:

Untuk meningkatkan lagi prestasi dan keselamatan Pengurus Proksi Nginx, kami boleh membuat beberapa konfigurasi pengoptimuman.

  1. Konfigurasi cache:

Pengurus Proksi Nginx menyokong konfigurasi cache HTTP, yang boleh cache sumber statik yang kerap diakses secara setempat untuk mengurangkan masa tindak balas dan penggunaan lebar jalur. Berikut ialah beberapa item konfigurasi cache biasa:

pelayan {

listen 80;
server_name example.com;

location / {
    proxy_pass http://backend;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_cache my_cache;
    proxy_cache_valid 200 1h;
}

location ~* .(css|js|gif|jpg|jpeg|png)$ {
    proxy_cache my_cache;
    proxy_cache_valid 200 1d;
}

location ~* .(woff|ttf|svg|eot)$ {
    proxy_pass http://backend;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_cache my_cache;
    proxy_cache_valid 200 30d;
}

}

Antaranya, proxy_cache menentukan nama cache dan proxy_cache_valid menentukan masa kesahihan cache.

  1. Konfigurasi pengimbangan beban:

Untuk meningkatkan prestasi dan ketersediaan pelayan, kami boleh menggunakan fungsi pengimbangan beban Pengurus Proksi Nginx untuk mengedarkan permintaan kepada berbilang pelayan bahagian belakang. Berikut ialah beberapa item konfigurasi pengimbangan beban biasa:

hujung belakang hulu {

server backend1.example.com;
server backend2.example.com;
server backend3.example.com;

}

di mana hujung belakang1, hujung belakang2 dan hujung belakang3 ialah alamat pelayan hujung belakang.

  1. Konfigurasi keselamatan:

Untuk meningkatkan keselamatan pelayan, kami boleh menggunakan item konfigurasi keselamatan Pengurus Proksi Nginx, seperti yang ditunjukkan di bawah:

pelayan {

listen 80;
server_name example.com;

location / {
    proxy_pass http://backend;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_hide_header X-Powered-By;
    proxy_hide_header Server;
    proxy_next_upstream error timeout http_503;
}

}

Antaranya, set_proksi maklumat pengepala permintaan, proxy_hide_header menentukan maklumat pengepala respons tersembunyi dan proxy_next_upstream menentukan bahawa apabila ralat, tamat masa atau http_503 ditemui, teruskan memajukan permintaan ke pelayan bahagian belakang seterusnya.

Kesimpulan:

Dengan menghuraikan dan mengoptimumkan konfigurasi Pengurus Proksi Nginx, kami boleh meningkatkan prestasi dan keselamatan pelayan. Dalam aplikasi sebenar, pelarasan konfigurasi yang sesuai boleh dibuat mengikut keperluan, dan diuji dan disahkan dalam persekitaran ujian. Saya harap artikel ini dapat membantu semua orang apabila menggunakan Pengurus Proksi Nginx.

Atas ialah kandungan terperinci Analisis konfigurasi dan pengoptimuman Pengurus Proksi Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn