Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Bagaimana Nginx mengubah hala HTTP ke HTTPS

Bagaimana Nginx mengubah hala HTTP ke HTTPS

WBOY
WBOYke hadapan
2023-05-13 09:52:133243semak imbas

Nginx ialah alat ubah hala yang berkuasa yang boleh dikonfigurasikan dengan mudah untuk mengubah hala trafik web HTTP yang tidak selamat atau tidak disulitkan ke pelayan web HTTPS yang disulitkan dan selamat pada sistem anda.

Nginx, disebut "Enjin x", ialah sumber terbuka, web berprestasi tinggi berasaskan Linux dan pelayan proksi terbalik yang bertanggungjawab untuk mengurus dan memproses trafik tapak web terbesar di Internet beban. Nginx ialah alat ubah hala yang berkuasa yang boleh dikonfigurasikan dengan mudah untuk mengubah hala trafik web HTTP yang tidak selamat atau tidak disulitkan ke pelayan web HTTPS yang disulitkan dan selamat pada sistem anda. Jika anda seorang pentadbir sistem atau pembangun, maka anda harus menggunakan pelayan Nginx dengan kerap.

Dalam siaran ini, kita akan melihat cara mengubah hala lalu lintas web daripada HTTP kepada HTTPS selamat dalam Nginx. Pengepala mesej HTTP dihantar dalam format rentetan teks yang jelas, manakala HTTPS menggunakan SSL/TLS untuk menyulitkan komunikasi antara sistem klien dan pelayan. Oleh itu, HTTPS harus menggantikan HTTP atas banyak sebab:

1. Semua data dalam kedua-dua arah antara pelayan pelanggan disulitkan. Namun, jika dipintas, tiada siapa yang boleh mengakses maklumat sensitif.

2. Apabila anda menggunakan HTTPS, Google Chrome dan penyemak imbas lain akan menganggap domain tapak web anda selamat.

3. Versi HTTPS meningkatkan prestasi tapak web anda menggunakan protokol HTTP/2.

4. Jika anda menyediakan domain tapak web anda melalui HTTPS, tapak web akan mendapat kedudukan yang lebih tinggi di Google kerana ia memihak kepada semua tapak web yang dilindungi HTTPS.

5 Adalah lebih baik untuk mengubah hala trafik dalam HTTP Nginx ke HTTPS dalam blok pelayan yang berasingan untuk setiap versi tapak. Ia juga disyorkan untuk mengelak daripada mengubah hala lalu lintas menggunakan arah "jika", yang boleh menyebabkan tingkah laku pelayan tidak menentu.

Ubah hala semua trafik dari HTTP ke HTTPS

Tambahkan perubahan berikut pada fail konfigurasi Nginx untuk mengubah hala semua trafik dari HTTP ke versi HTTPS:

rreee

Di bawah, kami memperincikan setiap syarat di atas:

  1. Dengar 80 default_server &ndash ini akan mengarahkan sistem anda untuk menangkap semua trafik HTTP pada port 80


  2. Nama_Pelayan _ – urutan yang sepadan selepas menerima permintaan


  3. Kembalikan 301 https://$ host$request_uri – Ini memberitahu enjin carian anda untuk mengubah hala secara kekal. Ia menentukan pembolehubah $host untuk memegang nama domain.

Selepas menukar tetapan konfigurasi, perkhidmatan Nginx perlu dimuat semula pada sistem. Jadi, muat semula perkhidmatan Nginx menggunakan arahan berikut:

server { 
    listen 80 default_server; 
    server_name _; 
    return 301 https://$host$request_uri; 
}

Ubah hala HTTP ke HTTPS untuk domain yang ditentukan dalam Nginx

Selepas memasang sijil SSL pada domain anda, anda akan mempunyai dua pilihan blok pelayan untuk nama domain ini. Satu blok adalah untuk mendengar versi HTTP pada port 80, dan versi kedua adalah untuk mendengar HTTPS pada port 443. Walau bagaimanapun, untuk mengubah hala domain tapak web daripada HTTP ke HTTPS, anda perlu membuka konfigurasi Nginx. Anda boleh mencari fail konfigurasi ini dalam direktori /etc/nginx/sites-available. Jika anda tidak menjumpai fail ini, anda boleh mencarinya /etc/nginx/nginx./usr/local/nginx/conf atau /usr/local/etc/nginx dan kemudian lakukan perubahan berikut dalam fail ini:

$ sudo systemctl reload nginx

Mari kita fahami baris demi baris kod di atas.

  1. Dengar 80 – Menggunakan port 80, pelayan akan mendengar semua sambungan masuk untuk nama domain yang ditentukan.


  2. Nama_Pelayan linuxmi.com www.linuxmi.com – Jadi gantikannya dengan nama domain tapak web yang ingin anda ubah hala.


  3. Return 301 https://linuxmi.com$request_uri –


  4. Pembolehubah $request_uri digunakan untuk URI permintaan asal yang lengkap, yang juga mengandungi parameter.

Menggunakan kaedah berikut, anda boleh mengubah hala trafik daripada versi www HTTPS kepada versi bukan www tapak anda. Untuk versi bukan www dan www, disyorkan untuk membuat ubah hala dalam blok pelayan yang berasingan. Mari kita jelaskan dengan contoh. Jika anda ingin mengubah hala permintaan HTTPS www kepada versi bukan www, anda harus mengikut konfigurasi berikut:

server { 
    listen 80; 
    server_name linuxmi.com www.linuxmi.com; 
    return 301 https://linuxmi.com$request_uri; 
}

Ganti nama domain dengan nama domain anda, contohnya www.linuxmi.com.

Dengan menukar tetapan fail konfigurasi Nginx, anda boleh mengubah hala domain tertentu atau semua ke HTTPS dengan mudah. Kaedah yang kami nyatakan dalam artikel ini boleh menjadikan tapak web anda lebih selamat dengan mengubah pengalaman pengguna.

Atas ialah kandungan terperinci Bagaimana Nginx mengubah hala HTTP ke HTTPS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam