Cara mengaktifkan http/2.0 dalam nginx

Cara mengaktifkan http/2.0 dalam nginx

Http/2 adalah standard terkini untuk Http protokol, ia adalah pengganti Http/1.1. Ia menjadi semakin popular kerana faedah yang dibawa kepada pemaju dan pengguna web secara umum. Ia menyediakan pengangkutan yang dioptimumkan untuk semantik HTTP dengan menyokong semua ciri teras Http/1.1 tetapi bertujuan untuk menjadi lebih cekap dalam pelbagai cara.

Terdapat banyak ciri di atas Http/2 yang memberi anda lebih banyak kemungkinan untuk mengoptimumkan laman web/aplikasi. Ia menawarkan multiplexing dan kesesuaian yang benar, pemampatan header yang lebih baik (pengekodan binari), keutamaan yang lebih baik, mekanisme kawalan aliran yang lebih baik, dan mod interaksi baru yang dipanggil "Push Server"Itu membolehkan pelayan untuk mendorong respons kepada pelanggan. Belum lagi, Http/2 berdasarkan eksperimen Google Spdy Protokol.

Oleh itu, tumpuan utama Http/2 adalah untuk mengurangkan masa pemuatan laman web keseluruhan, dengan itu meningkatkan prestasi. Ia juga memberi tumpuan kepada penggunaan sumber rangkaian dan pelayan serta keselamatan kerana, dengan Http/2, SSL/TLS Penyulitan adalah wajib.

Dalam artikel ini, anda akan belajar bagaimana untuk membolehkan Nginx dengan Http/2 Sokongan di pelayan Linux.

Prasyarat:

  • Pemasangan kerja dari Nginx versi 1.9.5 atau lebih tinggi, dibina dengan ngx_http_v2_module modul.
  • Pastikan laman web anda menggunakan sijil SSL/TLS, jika anda tidak mempunyai satu, anda boleh mendapatkan dari Let's Encrypt atau menggunakan sijil yang ditandatangani sendiri.

Anda boleh memasang Nginx atau menggunakannya dengan a Lemp Tumpukan seperti yang diterangkan dalam panduan berikut:

  • Cara Memasang Nginx pada CentOS 8
  • Cara Memasang Pelayan Lemp pada CentOS 8
  • Cara Memasang Nginx, MySQL/MariaDB dan PHP di RHEL 8
  • Cara Memasang Stack Lemp dengan Phpmyadmin di Ubuntu 20.04
  • Pasang nginx dengan blok pelayan (tuan rumah maya) di Debian 10
  • Cara Menggunakan Nginx Sebagai Pengimbang Beban HTTP di Linux

Cara mengaktifkan http/2.0 dalam nginx

Sekiranya anda memasang Nginx, sahkan bahawa ia dibina dengan ngx_http_v2_module modul dengan menjalankan arahan berikut.

# string/usr/sbin/nginx | Grep _Module | GREP -V Configure | Susun | grep ngx_http_v2_module 
Semak modul nginx http/2

Sebaik sahaja anda mempunyai laman web/aplikasi yang disampaikan oleh Nginx dengan Https dikonfigurasikan, buka blok pelayan maya laman web anda (atau Tuan rumah maya) fail untuk mengedit.

# vi/etc/nginx/conf.d/contoh.com.conf [on centos/rhel] $ sudo nano/etc/nginx/sites-tersedia/contoh.com.conf [di Ubuntu/Debian] 

Anda boleh mengaktifkan sokongan http/2 dengan hanya menambahkan http2 parameter kepada semua Dengarkan arahan seperti yang ditunjukkan dalam tangkapan skrin berikut.

Dengar 443 SSL http2; 

Konfigurasi blok pelayan sampel kelihatan seperti di bawah.

Server Server_Name Contoh.com www.Contoh.com; Access_log/var/log/nginx/contoh.com_access.log; error_log/var/log/nginx/contoh.com_error.log; Dengar [::]: 443 SSL ipv6only = on http2; # Diuruskan oleh Certbot Dengar 443 SSL http2; # Diuruskan oleh Certbot SSL_Certificate/etc/Letsencrypt/Live/Contohnya.com/fullchain.PEM; # Diuruskan oleh Certbot ssl_certificate_key/etc/letsencrypt/live/contoh.com/privkey.PEM; # Diuruskan oleh Certbot termasuk/etc/LetsEncrypt/Options-SSL-Nginx.Con; # Diuruskan oleh Certbot ssl_dhparam/etc/Letsencrypt/ssl-dhparams.PEM; # Diuruskan oleh Certbot 
Dayakan sokongan http/2 di nginx

Simpan perubahan dalam fail dan tutupnya.

Kemudian periksa sintaks konfigurasi nginx, jika tidak, mulakan semula perkhidmatan nginx.

# nginx -t # Systemctl mulakan semula nginx 

Seterusnya, buka penyemak imbas web untuk mengesahkan jika laman web anda disampaikan Http/2.

http: // www.Contoh.com 

Untuk mengakses tajuk HTTP, klik kanan di laman web yang dipaparkan, pilih Memeriksa Dari senarai pilihan untuk membuka alat pemaju, kemudian klik Rangkaian tab, dan tambah nilai halaman.

Periksa di bawah Protokol Untuk melihat laman web anda menggunakan (jika anda tidak melihat tajuk protokol, klik kanan pada mana-mana tajuk e.g Nama, Kemudian periksa Protokol dari senarai untuk memaparkannya sebagai tajuk).

Sekiranya laman web anda berjalan Http/1.1, di bawah Protokol, awak akan lihat http/1.1 Seperti yang ditunjukkan dalam tangkapan skrin berikut.

Laman web yang dijalankan di http/1.1

Sekiranya ia berjalan Http/2, di bawah Protokol, awak akan lihat H2 Seperti yang ditunjukkan dalam tangkapan skrin berikut. Anda mungkin mahu melumpuhkan cache penyemak imbas untuk melihat kandungan terkini yang disampaikan terus dari webserver.

Laman web yang dijalankan di http/2.0

Itu sahaja! Untuk maklumat lanjut, lihat dokumentasi modul NGX_HTTP_V2_MODULE. Jangan teragak -agak untuk mengemukakan soalan melalui borang maklum balas di bawah.