Cara menggunakan Nginx untuk melaksanakan sokongan protokol HTTP/2

WBOY
Lepaskan: 2023-08-03 17:40:53
asal
1513 orang telah melayarinya

Cara menggunakan Nginx untuk melaksanakan sokongan protokol HTTP/2

Ikhtisar:
HTTP/2 ialah protokol HTTP generasi baharu Berbanding dengan protokol HTTP/1.x sebelumnya, ia telah meningkatkan prestasi dan kecekapan. Untuk menyokong protokol HTTP/2, kami boleh menggunakan Nginx sebagai pelayan HTTP dan mengkonfigurasi tetapan yang sepadan.

Pasang dan konfigurasikan Nginx:
Pertama, kita perlu memasang Nginx. Ia boleh dipasang dalam sistem Ubuntu melalui arahan berikut:

sudo apt-get update
sudo apt-get install nginx
Salin selepas log masuk

Selepas pemasangan selesai, kita perlu mengkonfigurasi Nginx untuk menyokong protokol HTTP/2. Buka fail konfigurasi Nginx, yang boleh didapati di:

sudo nano /etc/nginx/nginx.conf
Salin selepas log masuk

Cari arahan dengar dalam blok pelayan dan tambah http2 sebagai parameter, seperti yang ditunjukkan di bawah: http2作为参数,如下所示:

server {
    listen 443 ssl http2;
    ...
}
Salin selepas log masuk

注意,这里假设您的网站使用了SSL证书且使用默认的443端口。如果您的网站没有启用SSL或使用不同的端口,请相应地调整配置。

保存并关闭文件后,重新启动Nginx以使更改生效:

sudo systemctl restart nginx
Salin selepas log masuk

配置SSL证书:
为了使用HTTP/2协议,我们需要配置SSL证书。在此示例中,我们将使用自签名证书。在生产环境中,应使用受信任的证书颁发机构签名的证书。

首先,创建一个用于存储SSL证书的目录:

sudo mkdir /etc/nginx/ssl
Salin selepas log masuk

然后,生成私钥和证书请求:

sudo openssl req -new -newkey rsa:2048 -nodes -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.csr
Salin selepas log masuk

按照提示进行相关信息的填写,例如国家码、组织名称等。

接下来,自签名证书:

sudo openssl x509 -req -days 365 -in /etc/nginx/ssl/nginx.csr -signkey /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt
Salin selepas log masuk

配置Nginx以使用SSL证书。打开Nginx的配置文件,并找到以下行:

server {
    ...
    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    ...
}
Salin selepas log masuk

取消注释listen

server {
    ...
    # SSL configuration
    #
    listen 443 ssl http2;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    ...
}
Salin selepas log masuk

Perhatikan, ini menganggap tapak web anda An Sijil SSL digunakan dan port lalai 443 digunakan. Jika tapak web anda tidak mendayakan SSL atau menggunakan port lain, sila laraskan konfigurasi dengan sewajarnya.

Selepas menyimpan dan menutup fail, mulakan semula Nginx untuk perubahan berkuat kuasa:

server {
    listen 443 ssl http2;
    server_name example.com;

    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;

    location / {
        root /var/www/html;
        index index.html;
    }
}
Salin selepas log masuk

Konfigurasikan sijil SSL: Untuk menggunakan protokol HTTP/2, kami perlu mengkonfigurasi sijil SSL. Dalam contoh ini kita akan menggunakan sijil yang ditandatangani sendiri. Dalam persekitaran pengeluaran, sijil yang ditandatangani oleh pihak berkuasa pensijilan yang dipercayai harus digunakan.


Mula-mula, buat direktori untuk menyimpan sijil SSL:

rrreee

Kemudian, jana kunci peribadi dan permintaan sijil:
rrreee

Ikut gesaan untuk mengisi maklumat yang berkaitan, seperti kod negara, nama organisasi, dsb.

Seterusnya, sijil yang ditandatangani sendiri: 🎜rrreee🎜 Konfigurasikan Nginx untuk menggunakan sijil SSL. Buka fail konfigurasi Nginx dan cari baris berikut: 🎜rrreee🎜Nyahkomen arahan dengar dan tambah laluan ke sijil SSL dan laluan ke kunci peribadi: 🎜rrreee🎜Selepas menyimpan dan menutup fail , mulakan semula Nginx untuk perubahan berkuat kuasa. 🎜🎜Uji sokongan protokol HTTP/2: 🎜Untuk mengesahkan bahawa protokol HTTP/2 berjaya didayakan, buka penyemak imbas anda dan lawati tapak web anda. Dalam alat pembangun penyemak imbas, lihat tab Rangkaian dan anda boleh melihat bahawa protokol yang diminta ialah HTTP/2. 🎜🎜Contoh Kod: 🎜Berikut ialah contoh konfigurasi Nginx ringkas yang merangkumi sokongan untuk protokol HTTP/2: 🎜rrreee🎜Kesimpulan: 🎜Dengan menggunakan konfigurasi Nginx untuk menyokong protokol HTTP/2, kami boleh meningkatkan prestasi dan kecekapan laman web tersebut. Dengan mengikut langkah dalam artikel ini, anda boleh melaksanakan sokongan untuk protokol HTTP/2 dengan mudah di tapak web anda. 🎜🎜Di atas adalah pengenalan dan contoh kod tentang cara menggunakan Nginx untuk melaksanakan sokongan protokol HTTP/2 Saya harap ia akan membantu anda! 🎜

Atas ialah kandungan terperinci Cara menggunakan Nginx untuk melaksanakan sokongan protokol HTTP/2. 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!