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

Configuration d'optimisation de l'hôte virtuel Nginx pour améliorer les performances du site Web

王林
Libérer: 2023-07-04 14:39:10
original
718 Les gens l'ont consulté

Configuration d'optimisation de l'hôte virtuel Nginx pour améliorer les performances du site Web

Dans le processus de développement et de déploiement d'un site Web, l'optimisation de la configuration est l'un des liens clés pour améliorer les performances du site Web. En tant que serveur Web hautes performances et serveur proxy inverse, Nginx peut exploiter pleinement ses avantages grâce à une configuration d'hôte virtuel raisonnable, rendant le site Web plus efficace et plus stable. Cet article présentera quelques méthodes de configuration d'optimisation de l'hôte virtuel Nginx et fournira des exemples de code correspondants.

  1. Configurer correctement le port d'écoute

Tout d'abord, nous devons réfléchir au choix d'un port d'écoute adapté. Nginx écoute le port 80 par défaut, mais si d'autres logiciels occupent ce port ou si vous devez exécuter plusieurs sites Web en même temps, vous devez modifier la configuration par défaut. Le port d'écoute peut être modifié en changeant la valeur de la directive listen. Par exemple, changez le port en 8080 :listen指令的值来修改监听端口。例如,将端口修改为8080:

server {
    listen 8080;
    ......
}
Copier après la connexion
  1. 开启gzip压缩

启用gzip压缩可以有效减小传输的数据量,提高网站的响应速度。可以通过在虚拟主机配置中添加以下代码来启用gzip压缩:

server {
    gzip on;
    gzip_min_length 1024;
    gzip_types text/plain text/css application/javascript application/json;
    ......
}
Copier après la connexion

以上配置表示当响应数据超过1024字节时,才会启用gzip压缩。同时,只有text/plain、text/css、application/javascript和application/json这几种类型的文件才会进行压缩。

  1. 设置缓存

合理设置缓存可以减少对后端服务器的请求次数,提高网站的响应速度。可以通过以下代码配置Nginx缓存:

server {
    # 配置缓存路径和大小
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m;

    # 缓存设置
    proxy_cache my_cache;
    proxy_cache_valid 200 302 12h;
    proxy_cache_valid 404 1m;

    # 代理配置
    location / {
        proxy_pass http://backend_server;
        proxy_cache_use_stale off;
        proxy_cache_bypass $http_cache_control;
        add_header Cache-Control no-store;
    }
}
Copier après la connexion

以上代码中,proxy_cache_path指令用于配置缓存路径和大小,proxy_cache指令用于指定使用哪个缓存,proxy_cache_valid指令用于设置缓存的有效时间。

  1. 启用HTTP/2

HTTP/2是新一代的HTTP协议,与HTTP/1相比具有更高的并发性和性能。可以通过以下代码开启HTTP/2:

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

以上代码中,通过在listen指令中添加http2参数启用HTTP/2。

  1. 配置反向代理

Nginx作为反向代理服务器常用来负载均衡和提供缓存功能,可以通过以下代码配置反向代理:

upstream backend {
    server backend_server1 weight=3;
    server backend_server2;
    ......
}

server {
    location / {
        proxy_pass http://backend;
        ......
    }
}
Copier après la connexion

以上配置中,upstream指令用于定义后端服务器集群,可以根据实际需要设置权重。location指令中的proxy_passrrreee

    Activer la compression gzip

    L'activation de la compression gzip peut réduire efficacement la quantité de données transmises et améliorer la vitesse de réponse du site Web. La compression Gzip peut être activée en ajoutant le code suivant à la configuration de l'hôte virtuel :

    rrreee

    La configuration ci-dessus indique que la compression gzip ne sera activée que lorsque les données de réponse dépassent 1 024 octets. Dans le même temps, seuls les fichiers text/plain, text/css, application/javascript et application/json seront compressés.

      🎜Configurer le cache🎜🎜🎜Une configuration correcte du cache peut réduire le nombre de requêtes adressées au serveur back-end et améliorer la vitesse de réponse du site Web. Le cache Nginx peut être configuré via le code suivant : 🎜rrreee🎜Dans le code ci-dessus, la directive proxy_cache_path est utilisée pour configurer le chemin et la taille du cache, la directive proxy_cache est utilisée pour spécifier quel cache utiliser, proxy_cache_valid est utilisée pour définir la durée de validité du cache. 🎜
        🎜Activer HTTP/2🎜🎜🎜HTTP/2 est une nouvelle génération de protocole HTTP avec une concurrence et des performances plus élevées que HTTP/1. HTTP/2 peut être activé via le code suivant : 🎜rrreee🎜Dans le code ci-dessus, HTTP/2 est activé en ajoutant le paramètre http2 à la directive listen. 🎜
          🎜Configurer le proxy inverse🎜🎜🎜Nginx est couramment utilisé comme serveur proxy inverse pour l'équilibrage de charge et la mise en cache. Vous pouvez configurer le proxy inverse via le code suivant : 🎜rrreee🎜Dans la configuration ci-dessus, upstream est utilisée pour définir le cluster de serveurs backend, et le poids peut être défini en fonction des besoins réels. proxy_pass dans la directive location est utilisé pour spécifier l'adresse du serveur proxy inverse. 🎜🎜Résumé : 🎜🎜Cet article présente certaines méthodes de configuration d'optimisation de l'hôte virtuel Nginx, notamment la configuration correcte des ports d'écoute, l'activation de la compression gzip, la configuration du cache, l'activation de HTTP/2 et la configuration du proxy inverse. Ces configurations optimisées peuvent améliorer les performances et la stabilité du site Web et offrir aux utilisateurs une meilleure expérience. Bien entendu, la méthode de configuration spécifique doit être affinée et ajustée en fonction de la situation réelle. 🎜🎜J'espère que grâce à l'introduction et à l'exemple de code de cet article, les lecteurs pourront mieux comprendre les connaissances pertinentes de la configuration de l'optimisation de l'hôte virtuel Nginx et les appliquer dans des applications pratiques. 🎜

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