Redirect http to https on Nginx
Isi kandungan:
Dalam panduan ini, kami akan menerangkan bagaimana untuk mengalihkan trafik HTTP ke HTTPS di Nginx.
Nginx menyatakan "enjin x" adalah pelayan bebas, sumber terbuka, HTTP berprestasi tinggi dan pelayan proksi terbalik yang bertanggungjawab untuk mengendalikan beban beberapa laman web terbesar di Internet.
Tidak seperti HTTP, di mana permintaan dan respons dihantar dan dikembalikan dalam plaintext, HTTPS menggunakan TLS / SSL untuk menyulitkan komunikasi antara pelanggan dan pelayan.
Terdapat banyak manfaat menggunakan HTTPS melalui HTTP, seperti:
- Semua data disulitkan dalam kedua-dua arah. Akibatnya, maklumat sensitif tidak boleh dibaca jika dipintas.Google Chrome dan semua pelayar popular lain akan menandakan laman web anda sebagai selamat.HTTPS membolehkan anda menggunakan protokol HTTP / 2, yang dengan ketara meningkatkan prestasi laman web.Google memihak kepada laman web HTTPS. Laman anda akan lebih baik jika dilayan melalui
Kaedah yang diutamakan untuk mengalihkan HTTP ke HTTPS di Nginx adalah untuk mengkonfigurasi blok pelayan berasingan bagi setiap versi laman web ini. Anda harus mengelakkan mengalihkan lalu lintas menggunakan arahan jika dapat menyebabkan tingkah laku yang tidak menentu dari pelayan.
Redirect HTTP ke HTTPS bagi setiap Situs
Untuk mengalihkan satu laman web ke HTTPS membuka fail konfigurasi domain dan buat perubahan berikut:
server { listen 80; listen:80; server_name linuxize.com www.linuxize.com; return 301 https://linuxize.com$request_uri; }
Mari kita memecahkan baris kod demi baris:
-
listen 80- Blok pelayan akan mendengar sambungan masuk pada port 80 untuk domain yang ditentukan.server_name linuxize.com www.linuxize.com- Menentukan nama domain blok pelayan. Pastikan anda menggantikannya dengan nama domain anda.return 301-return 301lalu lintas ke versi HTTPS tapak. Pembolehubah$request_uriadalah URI permintaan asal penuh termasuk argumen.
Biasanya, anda juga ingin mengarahkan versi HTTPS www tapak ke non-www atau sebaliknya. Cara yang disyorkan untuk melakukan redirect adalah untuk membuat blok pelayan yang berasingan untuk kedua-dua www dan bukan-www versi.
Sebagai contoh, untuk mengalihkan permintaan www HTTPS ke bukan-www, anda akan menggunakan konfigurasi berikut:
server { listen 80; listen:80; server_name linuxize.com www.linuxize.com; return 301 https://linuxize.com$request_uri; } server { listen 443 ssl http2; server_name www.linuxize.com; #… other code return 301 https://linuxize.com$request_uri; } server { listen 443 ssl http2; server_name linuxize.com; #… other code }
Redirect Semua Tapak ke HTTPS
Sekiranya semua laman web yang dihoskan pada pelayan dikonfigurasi untuk menggunakan HTTPS, dan anda tidak mahu membuat blok pelayan HTTP yang berasingan untuk setiap laman web anda boleh mencipta blok pelayan HTTP semua tangkapan. Blok ini akan mengalihkan semua permintaan HTTP ke blok HTTPS yang sesuai.
Untuk membuat blok HTTP tangkapan tunggal yang akan mengalihkan pelawat ke versi HTTPS tapak buka fail konfigurasi Nginx dan buat perubahan berikut:
server { listen 80 default_server; listen:80 default_server; server_name _; return 301 https://$host$request_uri; }
Mari kita analisa baris kod demi baris:
-
listen 80 default_server-listen 80 default_serverblok pelayan ini sebagai blok lalai (catch-all) untuk semua domain yang tidak dapat ditandingi.server_name _-_adalah nama domain yang tidak sah yang tidak sepadan dengan nama domain sebenar.return 301- Mengalihkan lalu lintas ke blok server HTTPS yang sepadan dengan kod status 301 (Dipindahkan Secara Permanen). Pembolehubah$hostmemegang nama domain permintaan.
Contohnya, jika pelawat membuka
http://example.com/page2
dalam penyemak imbas, Nginx akan mengalihkan permintaan kepada
https://example.com/page2
.
Jika boleh, lebih suka membuat pengalihan semula pada setiap domain dan bukannya HTTP global untuk pengalihan
Kesimpulannya
Sebaik sahaja anda mempunyai sijil SSL yang dipasang di tapak web anda, anda harus mengarahkan trafik HTTP ke
Di Nginx, cara pilihan untuk mengalihkan HTTP ke HTTPS adalah untuk membuat blok pelayan yang berasingan dan melakukan pengalihan 301.
nginxComcast Redirect URL Bad untuk Halaman Dengan Pengiklanan
Pelanggan Comcast kini akan diarahkan ke halaman dengan iklan jika mereka cuba untuk mencapai laman web yang tidak ada.
Perbezaan antara Protokol HTTP dan HTTPS
Evolusi HTTP, Bagaimana HTTPS berfungsi dan perbezaan antara HTTP dan HTTPS dalam terma ringkas dijelaskan. HTTP Vs HTTPS atau Protokol Pemindahan Hypertext melalui Layers Secure Socket dibincangkan.
Pindah ke standard https yang lebih selamat bermula dengan membunuh http
Standard HTTP lama mesti mati agar HTTPS menjadi standard de facto Internet. Langkah ini telah bermula, tetapi ia jauh dari selesai.







