Les paramètres optimaux de Nginx vous permettent d'augmenter la vitesse de traitement des demandes. En règle générale, sur l’hébergement mutualisé, tous les réglages ont déjà été effectués par les spécialistes de l’hébergeur. Et dans le cas de l'hébergement du site sur un serveur virtuel, tous les paramétrages sont effectués indépendamment.
Pour que le site fonctionne plus rapidement, nous vous recommandons de rechercher une configuration qui permettra au serveur Web nginx de fonctionner plus rapidement.
1. Vérifions les paramètres de base
nano /etc/nginx/nginx.conf
1.1 L'option détermine automatiquement le nombre de cœurs sur le serveur virtuel.
worker_processes auto;
1.2 Paramètres de compression
gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/ xml+rss text/javascript;
1.3 Activons http/2
Ajoutons http2 à la section serveur du fichier hôte Web après SSL dans la ligne d'écoute. Cette option ne doit être ajoutée que pour https.
server {
listen 89.xx.77.xx:443 ssl http2;
listen [2a01:xx:4:x::xx]:443 ssl http2;
1.3.1 Vérifions le fonctionnement de HTTP2
nginx -t
service nginx restart
curl -I https://your-domain.tld
Nous obtenons le résultat suivant :
HTTP/2 200
server: nginx
content-type: text/html; charset=UTF-8
vary: Accept-Encoding
cache-control: no-cache, private
date: Tue, 26 Mar 2024 10:39:35 GMT
1.4 Configurons le nombre maximum de connexions
La valeur par défaut est 768, remplaçons le numéro par celui spécifié dans le système d'exploitation.
1.4.1 Vérifions la valeur
ulimit -n
1024
1.4.2 Définissez-le dans le fichier de paramètres nginx
nano /etc/nginx/nginx.conf
events {
worker_connections 1024;
}
1.5 Ajuster la taille du tampon
Par défaut, nginx a une taille de tampon d'une page de mémoire. Afin qu'il puisse traiter plus de requêtes du cache, nous modifierons les valeurs à l'intérieur de la section http {} de votre hôte.
nano /etc/nginx/conf.d/domain-tld.conf
http {
...
client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 8m;
large_client_header_buffers 4 4k;
...
}
1.6 Configurer le délai d'expiration pour le traitement des demandes
Sous une charge élevée et un faible temps d'attente, le client peut recevoir un message d'erreur lorsque le serveur Web nginx n'a pas reçu de réponse de php-fpm, dans ce cas le temps d'attente doit être augmenté.
Veuillez noter que l'augmentation du temps d'attente peut avoir un impact négatif en cas d'inondation ou d'attaques ddos, car cela nécessitera plus de ressources de la part du serveur.
nano /etc/nginx/conf.d/domain-tld.conf
http {
...
client_body_timeout 12;
client_header_timeout 12;
keepalive_timeout 15;
send_timeout 10;
...
}
Désormais, votre nginx traitera les requêtes plus rapidement. Après avoir effectué toutes les modifications, recherchez les erreurs dans le fichier de configuration et redémarrez le service pour appliquer les modifications.
nginx -t
service nginx restart
Prêt.