cari
RumahOperasi dan penyelenggaraanNginxBagaimana saya mengkonfigurasi nginx sebagai pelayan proksi terbalik?

Bagaimana saya mengkonfigurasi nginx sebagai pelayan proksi terbalik?

Untuk mengkonfigurasi Nginx sebagai pelayan proksi terbalik, anda perlu menyediakan Nginx untuk mengemukakan permintaan klien ke pelayan backend. Berikut adalah panduan langkah demi langkah untuk mencapai matlamat ini:

  1. Pasang Nginx : Jika Nginx belum dipasang pada sistem anda, pasangkannya menggunakan pengurus pakej yang sesuai untuk sistem operasi anda. Sebagai contoh, di Ubuntu, anda boleh menggunakan arahan berikut:

     <code>sudo apt-get update sudo apt-get install nginx</code>
  2. Edit fail konfigurasi nginx : Fail konfigurasi lalai untuk nginx pada kebanyakan sistem terletak di /etc/nginx/nginx.conf atau dalam direktori /etc/nginx/sites-available/ . Anda perlu membuat atau mengedit fail konfigurasi untuk menyediakan proksi terbalik.
  3. Sediakan proksi terbalik : Dalam fail konfigurasi, tentukan blok pelayan yang bertindak sebagai proksi terbalik. Berikut adalah contoh konfigurasi yang memohon permintaan dari example.com ke pelayan backend yang berjalan pada localhost:8080 :

     <code>http { server { listen 80; server_name example.com; location / { proxy_pass http://localhost:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } } }</code>
    • proxy_pass : Menentukan alamat pelayan backend.
    • proxy_set_header : Menetapkan tajuk untuk permintaan proksi untuk memastikan pelayan backend menerima maklumat yang tepat mengenai permintaan asal.
  4. Uji dan mulakan semula nginx : Setelah membuat perubahan pada fail konfigurasi, sangat penting untuk menguji konfigurasi untuk kesilapan sintaks:

     <code>sudo nginx -t</code>

    Jika ujian berjaya, mulakan semula nginx untuk memohon konfigurasi baru:

     <code>sudo systemctl restart nginx</code>

Dengan mengikuti langkah -langkah ini, Nginx akan bertindak sebagai proksi terbalik, permintaan penghantaran ke pelayan backend yang ditentukan.

Apakah faedah menggunakan nginx sebagai proksi terbalik?

Menggunakan Nginx sebagai proksi terbalik menawarkan beberapa faedah:

  1. Load Balancing : Nginx boleh mengedarkan trafik masuk ke pelbagai pelayan backend, meningkatkan prestasi dan kebolehpercayaan. Ini amat berguna untuk aplikasi trafik tinggi.
  2. Keselamatan : Dengan bertindak sebagai perantara, nginx dapat membantu menutup kewujudan dan ciri -ciri pelayan backend, meningkatkan keselamatan. Ia juga boleh menggunakan penyulitan SSL/TLS untuk mengamankan data yang dihantar antara pelanggan dan pelayan.
  3. Pengoptimuman Prestasi : Nginx boleh cache kandungan dan memampatkan respons, mengurangkan beban pelayan dan meningkatkan masa tindak balas. Ia juga mengendalikan kandungan statik dengan lebih cekap daripada banyak pelayan aplikasi.
  4. Skalabiliti : NGINX membantu dalam aplikasi skala dengan membolehkan anda menambah atau mengeluarkan pelayan backend tanpa menjejaskan perkhidmatan front-end. Ini menjadikannya lebih mudah untuk menguruskan pertumbuhan dan penyelenggaraan.
  5. Ketersediaan Tinggi : Dengan permintaan penghalaan kepada pelayan backend yang sihat dan menguruskan failover, Nginx dapat memastikan ketersediaan perkhidmatan anda yang lebih tinggi.
  6. Fleksibiliti : NGINX menyokong banyak protokol dan boleh dikonfigurasikan untuk pelbagai kes penggunaan, seperti Proxying Websocket, Streaming, dan banyak lagi.

Bagaimanakah saya boleh mengoptimumkan prestasi nginx untuk persediaan proksi terbalik?

Untuk mengoptimumkan prestasi nginx dalam persediaan proksi terbalik, pertimbangkan strategi berikut:

  1. Dayakan caching : Gunakan keupayaan caching Nginx untuk menyimpan kandungan yang sering diakses. Ini dapat mengurangkan beban pada pelayan backend dan meningkatkan masa tindak balas.

     <code>proxy_cache_path /path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m; proxy_cache my_cache;</code>
  2. Proses dan Sambungan Pekerja Tune : Laraskan bilangan proses dan sambungan pekerja untuk memadankan keupayaan dan beban pelayan anda.

     <code>worker_processes auto; events { worker_connections 1024; }</code>
  3. Gunakan pemampatan GZIP : Dayakan GZIP untuk memampatkan tindak balas, mengurangkan penggunaan jalur lebar dan meningkatkan masa beban halaman.

     <code>gzip on; gzip_vary on; gzip_proxied any; gzip_comp_level 6; gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml rss text/javascript;</code>
  4. Mengoptimumkan Buffering : Konfigurasi saiz penampan untuk mengendalikan permintaan dan respons yang besar dengan lebih cekap.

     <code>proxy_buffers 16 16k; proxy_buffer_size 32k;</code>
  5. Melaksanakan penyatuan sambungan : Gunakan sambungan Keepalive untuk mengurangkan overhead untuk mewujudkan sambungan baru.

     <code>keepalive_timeout 65; keepalive_requests 100;</code>
  6. Hadkan Penggunaan Sumber : Gunakan ciri-ciri pembatasan sumber Nginx untuk mencegah penyalahgunaan dan memastikan penggunaan sumber pelayan yang adil.

     <code>limit_conn_zone $binary_remote_addr zone=addr:10m; limit_conn addr 10;</code>

Dengan melaksanakan pengoptimuman ini, anda dapat meningkatkan prestasi persediaan proksi terbalik nginx anda.

Apakah langkah -langkah keselamatan yang harus saya laksanakan ketika mengkonfigurasi Nginx sebagai proksi terbalik?

Melaksanakan langkah -langkah keselamatan adalah penting apabila mengkonfigurasi nginx sebagai proksi terbalik. Pertimbangkan amalan berikut:

  1. Penyulitan SSL/TLS : Dayakan HTTPS dengan mengkonfigurasi sijil SSL/TLS untuk mendapatkan data dalam transit. Gunakan alat seperti Let's Enrypt untuk sijil percuma.

     <code>server { listen 443 ssl; server_name example.com; ssl_certificate /path/to/cert.pem; ssl_certificate_key /path/to/key.pem; ssl_protocols TLSv1.2 TLSv1.3; ssl_prefer_server_ciphers on; ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256'; }</code>
  2. HTTP Keselamatan Pengangkutan Ketat (HSTS) : Menguatkuasakan sambungan HTTPS untuk mencegah serangan penurunan protokol.

     <code>add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;</code>
  3. Mengehadkan Kadar : Melindungi daripada serangan kekerasan dan DDO dengan mengehadkan kadar permintaan dari alamat IP individu.

     <code>limit_req_zone $binary_remote_addr zone=one:10m rate=1r/s; limit_req zone=one burst=5;</code>
  4. Tajuk Keselamatan : Tambah tajuk untuk meningkatkan keselamatan, seperti Dasar Keselamatan Kandungan (CSP), X-Frame-Options, dan X-XSS-perlindungan.

     <code>add_header X-Frame-Options "SAMEORIGIN"; add_header X-Content-Type-Options "nosniff"; add_header X-XSS-Protection "1; mode=block"; add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval';";</code>
  5. Lumpuhkan Token Pelayan : Sembunyikan maklumat versi Nginx untuk mengurangkan kebocoran maklumat.

     <code>server_tokens off;</code>
  6. Kawalan Akses : Hadkan akses ke bahagian tertentu pelayan anda berdasarkan alamat IP atau kriteria lain.

     <code>location /admin { allow 192.168.1.0/24; deny all; }</code>
  7. Kemas kini tetap : Pastikan Nginx dan semua perisian yang berkaitan terkini untuk melindungi daripada kelemahan yang diketahui.

Dengan mengikuti amalan keselamatan ini, anda dapat meningkatkan keselamatan konfigurasi proksi terbalik NGINX anda.

Atas ialah kandungan terperinci Bagaimana saya mengkonfigurasi nginx sebagai pelayan proksi terbalik?. 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
Unit Nginx: Senibina dan Bagaimana Ia BerfungsiUnit Nginx: Senibina dan Bagaimana Ia BerfungsiApr 23, 2025 am 12:18 AM

NginxUnit meningkatkan prestasi aplikasi dan pengurusan dengan seni bina modular dan keupayaan konfigurasi semula dinamik. 1) Reka bentuk modular termasuk proses induk, router dan proses permohonan, menyokong pengurusan dan pengembangan yang cekap. 2) Konfigurasi semula dinamik membolehkan kemas kini konfigurasi yang lancar semasa runtime, sesuai untuk persekitaran CI/CD. 3) Sokongan berbilang bahasa dilaksanakan melalui pemuatan dinamik bahasa runtime, meningkatkan fleksibiliti pembangunan. 4) Prestasi tinggi dicapai melalui model yang didorong oleh peristiwa dan I/O asynchronous, dan tetap efisien walaupun di bawah kesesuaian yang tinggi. 5) Keselamatan diperbaiki dengan mengasingkan proses permohonan dan mengurangkan pengaruh bersama antara aplikasi.

Menggunakan Unit Nginx: Menggunakan dan Menguruskan AplikasiMenggunakan Unit Nginx: Menggunakan dan Menguruskan AplikasiApr 22, 2025 am 12:06 AM

NginxUnit boleh digunakan untuk menggunakan dan mengurus aplikasi dalam pelbagai bahasa. 1) Pasang nginxUnit. 2) Konfigurasikannya untuk menjalankan pelbagai jenis aplikasi seperti Python dan PHP. 3) Gunakan fungsi konfigurasi dinamik untuk pengurusan aplikasi. Melalui langkah -langkah ini, anda dapat menggunakan dan mengurus aplikasi dengan cekap dan meningkatkan kecekapan projek.

Nginx vs Apache: Analisis Perbandingan Pelayan WebNginx vs Apache: Analisis Perbandingan Pelayan WebApr 21, 2025 am 12:08 AM

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.

Kelebihan Unit Nginx: Fleksibiliti dan PrestasiKelebihan Unit Nginx: Fleksibiliti dan PrestasiApr 20, 2025 am 12:07 AM

NginxUnit meningkatkan fleksibiliti dan prestasi aplikasi dengan konfigurasi dinamik dan seni bina berprestasi tinggi. 1. Konfigurasi dinamik membolehkan konfigurasi aplikasi diselaraskan tanpa memulakan semula pelayan. 2. Prestasi tinggi dicerminkan dalam seni bina yang didorong dan tidak menyekat dan model multi-proses, dan dapat mengendalikan sambungan serentak dengan cekap dan menggunakan CPU multi-teras.

Nginx vs Apache: Prestasi, Skalabiliti, dan KecekapanNginx vs Apache: Prestasi, Skalabiliti, dan KecekapanApr 19, 2025 am 12:05 AM

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.

The Ultimate Showdown: Nginx vs ApacheThe Ultimate Showdown: Nginx vs ApacheApr 18, 2025 am 12:02 AM

Nginx sesuai untuk mengendalikan permintaan serentak yang tinggi, manakala Apache sesuai untuk senario di mana konfigurasi kompleks dan sambungan berfungsi diperlukan. 1.Nginx mengamalkan seni bina yang didorong oleh peristiwa, tidak menyekat, dan sesuai untuk persekitaran yang tinggi. 2. Apache mengamalkan model atau model benang untuk menyediakan ekosistem modul yang kaya yang sesuai untuk keperluan konfigurasi kompleks.

Nginx dalam tindakan: contoh dan aplikasi dunia nyataNginx dalam tindakan: contoh dan aplikasi dunia nyataApr 17, 2025 am 12:18 AM

Nginx boleh digunakan untuk meningkatkan prestasi laman web, keselamatan, dan skalabiliti. 1) Sebagai proksi terbalik dan pengimbang beban, Nginx dapat mengoptimumkan perkhidmatan back-end dan berkongsi lalu lintas. 2) Melalui seni bina yang didorong oleh peristiwa dan tak segerak, Nginx dengan cekap mengendalikan sambungan serentak yang tinggi. 3) Fail konfigurasi membenarkan definisi peraturan yang fleksibel, seperti perkhidmatan fail statik dan mengimbangi beban. 4) Cadangan pengoptimuman termasuk membolehkan pemampatan GZIP, menggunakan cache dan menala proses pekerja.

Unit Nginx: Menyokong bahasa pengaturcaraan yang berbezaUnit Nginx: Menyokong bahasa pengaturcaraan yang berbezaApr 16, 2025 am 12:15 AM

NginxUnit menyokong pelbagai bahasa pengaturcaraan dan dilaksanakan melalui reka bentuk modular. 1. Memuatkan Modul Bahasa: Muatkan modul yang sepadan mengikut fail konfigurasi. 2. Permulaan Permohonan: Jalankan kod aplikasi apabila bahasa panggilan berjalan. 3. Permintaan Pemprosesan: Teruskan permintaan kepada contoh permohonan. 4. Pulangan Respons: Kembalikan respons yang diproses kepada pelanggan.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

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

Alat panas

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

SecLists

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.

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan