Maison > Opération et maintenance > Nginx > le corps du texte

Comment utiliser Nginx pour implémenter la prise en charge du protocole HTTP/2

WBOY
Libérer: 2023-08-03 17:40:53
original
1421 Les gens l'ont consulté

Comment utiliser Nginx pour implémenter la prise en charge du protocole HTTP/2

Vue d'ensemble :
HTTP/2 est une nouvelle génération de protocole HTTP Par rapport au protocole HTTP/1.x précédent, il a considérablement amélioré les performances et l'efficacité. Afin de prendre en charge le protocole HTTP/2, nous pouvons utiliser Nginx comme serveur HTTP et configurer les paramètres correspondants.

Installer et configurer Nginx :
Tout d'abord, nous devons installer Nginx. Il peut être installé dans le système Ubuntu via la commande suivante :

sudo apt-get update
sudo apt-get install nginx
Copier après la connexion

Une fois l'installation terminée, nous devons configurer Nginx pour prendre en charge le protocole HTTP/2. Ouvrez le fichier de configuration de Nginx, qui peut être trouvé à l'adresse :

sudo nano /etc/nginx/nginx.conf
Copier après la connexion

Recherchez la directive d'écoute dans le bloc serveur et ajoutez http2 comme paramètre, comme indiqué ci-dessous : http2作为参数,如下所示:

server {
    listen 443 ssl http2;
    ...
}
Copier après la connexion

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

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

sudo systemctl restart nginx
Copier après la connexion

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

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

sudo mkdir /etc/nginx/ssl
Copier après la connexion

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

sudo openssl req -new -newkey rsa:2048 -nodes -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.csr
Copier après la connexion

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

接下来,自签名证书:

sudo openssl x509 -req -days 365 -in /etc/nginx/ssl/nginx.csr -signkey /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt
Copier après la connexion

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

server {
    ...
    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    ...
}
Copier après la connexion

取消注释listen

server {
    ...
    # SSL configuration
    #
    listen 443 ssl http2;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    ...
}
Copier après la connexion

Remarque, cela suppose que votre site Web Le certificat SSL est utilisé et le port par défaut 443 est utilisé. Si votre site Web n'a pas activé SSL ou utilise un port différent, veuillez ajuster la configuration en conséquence.

Après avoir enregistré et fermé le fichier, redémarrez Nginx pour que les modifications prennent effet :

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;
    }
}
Copier après la connexion

Configurer le certificat SSL : Afin d'utiliser le protocole HTTP/2, nous devons configurer le certificat SSL. Dans cet exemple, nous utiliserons un certificat auto-signé. Dans un environnement de production, un certificat signé par une autorité de certification de confiance doit être utilisé.


Tout d'abord, créez un répertoire pour stocker les certificats SSL :

rrreee

Ensuite, générez une clé privée et une demande de certificat :
rrreee

Suivez les invites pour remplir les informations pertinentes, telles que le code du pays, le nom de l'organisation, etc.

Ensuite, certificat auto-signé : 🎜rrreee🎜 Configurez Nginx pour utiliser un certificat SSL. Ouvrez le fichier de configuration Nginx et recherchez la ligne suivante : 🎜rrreee🎜Décommentez la directive listen et ajoutez le chemin du certificat SSL et le chemin de la clé privée : 🎜rrreee🎜Après avoir enregistré et fermé le fichier , redémarrez Nginx pour que les modifications prennent effet. 🎜🎜Test de prise en charge du protocole HTTP/2 : 🎜Pour vérifier que le protocole HTTP/2 est activé avec succès, ouvrez votre navigateur et visitez votre site Web. Dans les outils de développement du navigateur, regardez l'onglet Réseau et vous pouvez voir que le protocole demandé est HTTP/2. 🎜🎜Exemple de code : 🎜Ce qui suit est un exemple simple de configuration Nginx qui inclut la prise en charge du protocole HTTP/2 : 🎜rrreee🎜Conclusion : 🎜En utilisant la configuration Nginx pour prendre en charge le protocole HTTP/2, nous pouvons améliorer les performances et l'efficacité de le site Web. En suivant les étapes de cet article, vous pouvez facilement implémenter la prise en charge du protocole HTTP/2 sur votre site Web. 🎜🎜Ce qui précède est une introduction et un exemple de code sur la façon d'utiliser Nginx pour implémenter la prise en charge du protocole HTTP/2. J'espère que cela vous sera utile ! 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!