Galerie de cartes mentales Nignx
Nginx est un serveur Web HTTP et proxy inverse hautes performances qui fournit également des services IMAP/POP3/SMTP.
Modifié à 2024-01-19 10:26:42Nignx
utiliser
Commande
-c
Spécifiez le chemin par défaut du fichier de configuration --conf-path
-p
Spécifier le répertoire d'installation de nginx
-g
Spécifiez temporairement certains éléments de configuration globale pour que les nouveaux éléments de configuration prennent effet
nginx -g "pid /var/nginx/test.pid"
Restrictions :
Les éléments de configuration ne peuvent pas entrer en conflit avec nginx.conf dans le chemin par défaut, sinon il ne pourra pas être démarré.
Lorsque le service nginx démarré en mode -g exécute d'autres commandes, il est nécessaire d'apporter -g, sinon les éléments de configuration risquent de ne pas correspondre.
-t
Testez le fichier de configuration pour les erreurs
-s
Envoyer des signaux : arrêter, quitter, rouvrir, recharger
Configuration
Problèmes de débogage et de localisation
démon activé | désactivé ;
S'il faut exécuter en mode démon
master_process activé |
S'il faut travailler en mode maître/woker
off ; le processus maître gère lui-même la demande.
error_log /chemin/niveau de fichier ;
Paramètres du journal
debug_points [arrêter | abandonner]
stop : envoyer le signal SIGSTOP au point de débogage du code pour le débogage
abort : générez un fichier coredump, vous pouvez utiliser gdb pour afficher les informations
connexion_debug [IP | CIDR]
Cet élément de configuration appartient en fait aux événements de configuration de la classe d'événements { } et n'est valide que
taille worker_rlimit_core ;
Limiter la taille du fichier de vidage de mémoire coredump
chemin du répertoire_de_travail ;
Spécifier le répertoire de génération du fichier coredump
Remarque : Si le niveau de journalisation est défini sur débogage, vous devez configurer l'élément de configuration --with-debug lors de la compilation.
Éléments de configuration pour un fonctionnement normal
env VAR|VAR=VALEUR
Définir les variables d'environnement
inclure /chemin/fichier ;
Intégrer d'autres fichiers de configuration
chemin/fichier pid ;
chemin du fichier pid
utilisateur nom d'utilisateur [nom du groupe] ;
L'utilisateur et le groupe d'utilisateurs sous lesquels le processus de travail nginx s'exécute
limite worker_rlimit_nofile ;
Le nombre maximum de descripteurs de fichiers pouvant être ouverts par un processus de travail
limite worker_rlimit_sigending ;
Limiter la file d'attente des signaux
Éléments de configuration pour optimiser les performances
numéro de processus_travailleur
Le nombre de processus de travail nginx ; le nombre optimal est le nombre de cœurs de processeur ;
travailleur_cpu_affinity cpumask [cpumask...]
Liez le processus de travail nginx au cœur de processeur spécifié ; ne prend en charge que les systèmes Linux.
périphérique ssl_engin
Accélération matérielle SSL ; moteur openssl -t
timer_resolution t
Fréquence d'exécution de l'appel système gettimeofday
travailleur_priority sympa
Définition des priorités du processus de travail nginx
Événements d'éléments de configuration de classe d'événement
accept_mutex [activé| désactivé]
S'il faut ouvrir le verrou d'acceptation ;
chemin/fichier lock_file ;
chemin pour verrouiller le fichier
accept_mutex_delay Nms ;
Le délai entre l'utilisation du verrou d'acceptation et l'établissement effectif de la connexion
multi_accepter [off non]
Établir de nouvelles connexions par lots
utiliser [kqueue | epoll | /dev/poll sélectionner |
Sélectionnez le modèle d'événement
numéro de connexion_travailleur ;
Nombre maximum de connexions par travailleur
http{}
serveur {}
emplacement [ = | ~ ~* | ^~|@] /uri/ {}
chemin racine
Définir le chemin des ressources en mode racine
chemin d'alias
Définir le chemin de la ressource en mode alias
fichier d'index...
Visitez la page d'accueil
code de la page d'erreur [code...] [ = | =code-réponse] uri @named_location
Redirection des pages en fonction du code de retour HTTP
page_erreur_récursive [désactivé activé]
S'il faut autoriser l'utilisation récursive de error_page
try_files chemin1 [chemin2] uri
Essayez d'obtenir des chemins valides dans l'ordre, si tous ne sont pas valides, renvoyez l'uri
adresse d'écoute: port [ default | default_server | backlog=num | rcvbuf=size | accept_filter=filter | ipv6only=[on|off] |
nom_serveur nom [...]
nom d'hôte
taille du serveur_names_hash_bucket_size
nginx utilise une table de hachage pour stocker le nom du serveur ; définit la taille de la mémoire occupée par chaque compartiment de hachage ;
taille du serveur_names_hash_max_size
Taux de collision des tables de hachage
nom_serveur_in_redirect activé | désactivé ;
Gestion du nom d'hôte de redirection
nginx.conf
Ressources mémoire et disque
client_body_in_file_only désactivé | nettoyer activé |
Utilisé pour le débogage et la localisation des problèmes
client_body_in_single_buffer désactivé activé |
Le corps du paquet HTTP dans la requête est toujours stocké dans la mémoire tampon. S'il dépasse client_body_buffer_size, il est écrit dans le fichier disque.
client_header_buffer_size taille
nginx alloue la taille du tampon mémoire lors de l'acceptation de la partie d'en-tête HTTP de la requête
taille du nombre large_client_header_buffers
Le nombre de tampons et la taille de chaque tampon pour stocker des en-têtes HTTP extrêmement volumineux
client_body_buffer_size taille
Taille de la mémoire tampon pour stocker le corps du paquet HTTP
client_body_temp_path chemin_dir [ niveau1 [ niveau2 [ niveau3 ]]]
Répertoire de stockage temporaire pour les corps des paquets HTTP
taille de connexion_pool_size
Taille du pool de mémoire de connexion
taille de la requête_pool_size
Allouer la taille du pool de mémoire par requête
Configuration de la connexion réseau
temps client_header_timeout
Délai d'expiration pour la lecture des en-têtes HTTP
temps client_body_timeout
Délai d'expiration pour la lecture du corps HTTP
temps d'envoi_timeout
Expiration du délai de réponse à l'envoi
reset_timeout_connect désactivé activé |
S'il faut réinitialiser la connexion après l'expiration du délai de connexion
persistant_close activé | toujours
Contrôler nginx pour fermer le mode de connexion utilisateur
persistant_time temps
Utile pour télécharger des fichiers volumineux lorsque lingering_close est activé
temps d'attente persistant_timeout
Une fois que persisting_close prend effet, vérifiez les données avant de fermer la connexion.
keepalive_disable [ mise6 | safari aucun] ...
Désactiver la fonctionnalité keepalive pour certains navigateurs
temps keepalive_timeout
délai d'attente Keepalive
keepalive_requests m
Le nombre maximum de requêtes autorisées à être effectuées sur une connexion keepalive
tcp_nodelay activé désactivé |
Déterminer s'il faut utiliser TCP_NODELAY pour les connexions keepalive
tcp_nopush désactivé | activé
Activez tcp_nopush et placez l'intégralité de l'en-tête de réponse dans un paquet TCP lors de l'envoi d'une réponse.
Paramètres de type MIME
les types {...}
Mappage des types MIME et des extensions de fichiers
default_type Type MIME
L'en-tête HTTP Content-Type est utilisé par défaut
types_hash_bucket_size taille
La taille de la mémoire occupée par chaque douleur Sanli
types_hash_max_size taille
Taux de collision des tables de hachage
Limitations sur les demandes des clients
méthode limit_sauf ... { ... }
Limiter les requêtes par méthode HTTP
sujet de branche
sujet de branche