Penggunaan selamat Nginx: mulakan dengan konfigurasi pelayan

WBOY
Lepaskan: 2023-06-10 08:24:14
asal
1146 orang telah melayarinya

Nginx ialah pelayan proksi HTTP dan terbalik yang sangat baik yang boleh memberikan prestasi tinggi, kestabilan dan kebolehskalaan. Untuk memastikan keselamatan dan kestabilan pelayan Nginx, penggunaan selamat diperlukan. Artikel ini akan bermula dengan konfigurasi pelayan dan memperkenalkan secara terperinci pemasangan, konfigurasi, pengoptimuman dan penggunaan keselamatan Nginx.

  1. Konfigurasi pelayan

Sebelum memasang Nginx, anda perlu melakukan konfigurasi pelayan asas. Adalah disyorkan untuk menggunakan sistem pengendalian Linux dan memasang kemas kini sistem dan tampung keselamatan terkini. Di samping itu, pelayan harus mempunyai memori dan kuasa pemproses yang mencukupi untuk memastikan prestasi tinggi pelayan Nginx.

  1. Pasang Nginx

Nginx boleh memuat turun versi stabil terkini dari tapak web rasmi https://nginx.org/en/download.html. Selepas muat turun selesai, gunakan arahan berikut untuk memasang:

tar -zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
./configure
make
sudo make install
Salin selepas log masuk
  1. Konfigurasikan Nginx

Fail konfigurasi utama Nginx terletak di /etc/nginx/nginx. conf. Apabila membuat perubahan, pastikan anda membuat sandaran fail asal. Berikut ialah contoh fail konfigurasi Nginx lalai:

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
    worker_connections 1024;
}

http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;
    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
    access_log /var/log/nginx/access.log main;
    sendfile on;
    # ...
    server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /usr/share/nginx/html;
        index index.html;
        server_name _;
        location / {
            try_files $uri $uri/ =404;
        }
        # ...
    }
}
Salin selepas log masuk

Fail ini termasuk konfigurasi proses pengguna dan pekerja, format log, lokasi log akses, konfigurasi pemindahan fail dan blok pelayan HTTP lalai. Arahan dengar mentakrifkan port yang blok pelayan harus dengar. Port 80 dalam contoh ini ditakrifkan sebagai port pelayan lalai Jika pengguna mengakses menggunakan alamat IP dalam penyemak imbas, Nginx akan mengakses fail lalai pada pelayan dan mengembalikannya kepada klien.

  1. Optimumkan konfigurasi Nginx

Prestasi Nginx bergantung pada banyak faktor, termasuk konfigurasi pelayan dan persekitaran rangkaian. Untuk mengoptimumkan prestasi Nginx, anda boleh melakukan perkara berikut:

  • Dayakan fungsi caching Nginx. Ini akan mempercepatkan masa respons untuk permintaan untuk fail statik, seperti fail CSS, fail JavaScript dan fail imej. Mengambil mekanisme cache HTTP standard sebagai contoh, berikut ialah konfigurasi contoh:
http {
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m inactive=60m;
    server {
        location ~* .(png|jpg|jpeg|gif|ico)$ {
            proxy_cache my_cache;
            proxy_pass http://backend;
        }
    }
}
Salin selepas log masuk
  • Meningkatkan prestasi dengan meningkatkan bilangan proses_pekerja. Bilangan worker_processes hendaklah sama dengan bilangan teras CPU yang tersedia pada pelayan. Contohnya, jika pelayan mempunyai empat teras CPU, worker_process hendaklah ditetapkan kepada 4.
  • Dayakan fungsi nopush dan nodelay TCP. Ini akan mengurangkan kependaman dan kehilangan paket dalam protokol TCP. Berikut ialah contoh konfigurasi:
http {
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    # ...
}
Salin selepas log masuk
  1. Pengedaran Selamat

Keselamatan Nginx adalah sangat penting. Berikut ialah beberapa cadangan untuk penggunaan selamat:

  • Gunakan protokol HTTPS untuk menyulitkan pemindahan data, terutamanya pemindahan data sensitif seperti maklumat akaun bank atau nombor kad kredit. Menggunakan sijil memastikan penghantaran data tidak diusik atau dicuri semasa penghantaran.
  • Hadkan kadar permintaan untuk melindungi tapak web anda daripada serangan DDoS. Sebagai contoh, gunakan arahan limit_req_zone Nginx untuk menetapkan kadar permintaan.
http {
    limit_req_zone $binary_remote_addr zone=my_zone:10m rate=1r/s;
    server {
        location / {
            limit_req zone=my_zone burst=5 nodelay;
            # ...
        }
    }
}
Salin selepas log masuk
  • Hadkan saiz muat naik fail untuk mengelakkan muat naik fail berniat jahat. Gunakan arahan client_max_body_size Nginx untuk menetapkan had saiz fail.
http {
    client_max_body_size 10M;
    server {
        location /upload {
            # ...
        }
    }
}
Salin selepas log masuk
  • Tutup perkhidmatan yang tidak diperlukan dalam sistem. Contohnya, jika pelayan anda tidak memerlukan perkhidmatan mel, anda harus mematikan perkhidmatan mel untuk mengurangkan risiko.
  • Kemas kini sistem dan perisian dengan kerap untuk memastikan keselamatan. Kemas kini hendaklah digunakan pada pelayan dengan segera selepas ia dikeluarkan.

Artikel ini memperkenalkan pemasangan, konfigurasi, pengoptimuman dan penggunaan selamat Nginx secara terperinci. Langkah-langkah ini boleh memastikan prestasi tinggi, keselamatan dan kestabilan pelayan Nginx.

Atas ialah kandungan terperinci Penggunaan selamat Nginx: mulakan dengan konfigurasi pelayan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!