Maison >Opération et maintenance >exploitation et maintenance Linux >Explication détaillée du fichier de configuration Nginx nginx.conf
#Définissez l'utilisateur et le groupe d'utilisateurs sur lesquels Nginx s'exécute
utilisateur www www;
#Le nombre de processus nginx, il est recommandé de le définir égal au nombre total de cœurs de processeur .
worker_processes 8;
#Type de définition du journal des erreurs globales, [informations de débogage | avertir erreur | .log info;
#Process file
pid /var/run/nginx.pid;
#Le nombre maximum de descripteurs de fichiers ouverts par un processus nginx, le théorique la valeur doit être Il s'agit du nombre maximum de fichiers ouverts (valeur système ulimit -n) divisé par le nombre de processus nginx. Cependant, nginx alloue les requêtes de manière inégale, il est donc recommandé de garder la valeur cohérente avec ulimit -n.
worker_rlimit_nofile 65535;
#Mode de travail et nombre maximum de connexions
événements
{
#Modèle d'événement de référence, utilisez [ kqueue | rtsig | epoll | /dev/poll | select | poll ]; Le modèle epoll est un modèle d'E/S réseau hautes performances dans le noyau Linux 2.6 ou supérieur.
use epoll;
#Nombre maximum de connexions pour un seul processus (nombre maximum de connexions = nombre de connexions * nombre de processus)
worker_connections 65535;
}
#Définir le serveur http
http
{
inclure mime.types ; #Extension de fichier et table de mappage de type de fichier
default_type application/octet-stream ; #Type de fichier par défaut
#charset utf-8 ; #Encodage par défaut
server_names_hash_bucket_size 128 ; #Taille de la table de hachage du nom du serveur
client_header_buffer_size 32k ; #Limite de taille du fichier de téléchargement
large_client_header_buffers 4 64k ; #Définir le tampon de requête
client_max_body_size 8m ; #Définir le tampon de requête
sendfile activé ; mode, L'instruction sendfile spécifie si nginx appelle la fonction sendfile pour générer des fichiers. Elle est activée pour les applications ordinaires. Si elle est utilisée pour des applications à forte charge d'E/S disque telles que le téléchargement, elle peut être désactivée pour équilibrer le disque et. vitesse de traitement des E/S du réseau et réduire la vitesse du système. Remarque : Si l'image ne s'affiche pas correctement, désactivez cette option.
autoindex activé ; #Activer l'accès à la liste des répertoires, adapté aux serveurs de téléchargement, fermé par défaut.
tcp_nopush on ; #Prévenir la congestion du réseau
tcp_nodelay on ; #Prévenir la congestion du réseau
keepalive_timeout 120 #Délai d'expiration de connexion long, en secondes
#FastCGI les paramètres associés visent à améliorer les performances du site Web : réduire l’utilisation des ressources et augmenter la vitesse d’accès. Les paramètres suivants peuvent être compris littéralement.
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 128k;
#paramètres du module gzip
gzip activé; #Activer la sortie de compression gzip
g zip_min_length 1k #; Taille minimale du fichier de compression
gzip_buffers 4 16k ; #Tampon de compression
gzip_http_version 1.0 ; #Version de compression (par défaut 1.1, si le frontal est squid2.5, veuillez utiliser 1.0)
gzip_comp_level 2 ; #Niveau de compression
gzip_types text/plain application/x-javascript text/css application/xml;
#Le type de compression inclut déjà le texte/html par défaut, il y a donc pas besoin de l'écrire ci-dessous Oui, il n'y aura aucun problème pour l'écrire, mais il y aura un avertissement.
gzip_vary on;
#limit_zone crawler $binary_remote_addr 10m; #Besoin d'utiliser lors de l'activation de la limitation du nombre de connexions IP
blog en amont.ha97.com {
#Équilibrage de charge en amont, le poids est le poids, et le poids peut être défini selon la configuration de la machine. Le paramètre de poids représente le poids. Plus le poids est élevé, plus la probabilité d'être attribué est grande.
serveur 192.168.80.121:80 poids=3;
serveur 192.168.80.122:80 poids=2;
serveur 192.168.80.123:80 poids =3;
>
#Configuration de l'hôte virtuel
serveur{
#Port d'écoute
écoute 80 >
#Les noms de domaine peuvent avoir plusieurs noms, séparés par des espaces nom_serveur www.pythontab.com; index index.html index.htm index.php; racine / data/www/pythontab; emplacement ~ .*.(php|php5)?$ { fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php; include fastcgi.conf; } #Paramètre de l'heure du cache des images emplacement ~ .*.(gif |jpg| jpeg|png|bmp|swf)$
{
expire 10j ;
}
Paramètres de temps de cache #JS et CSS
emplacement ~ .*.(js|c ss) ? $
expire dans 1 h ; _addr - $remote_user [ $time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent " $http_x_forwarded_for';
#Définir cet hôte virtuel Journal d'accès
access_log /var/log/nginx/pythontab.log access;
#Activer le proxy inverse pour "/ "
emplacement / {
proxy_pass http://127.0.0.1:8888;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr ;
#Le serveur Web back-end peut transmettre X-Forwarded-For Obtenez la véritable adresse IP de l'utilisateur
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
client_max_body_size 10m; #Le nombre maximum d'octets d'un seul fichier pouvant être demandé par le client
client_body_buffer_size 128k #Buffer proxy buffer; client demandé Nombre maximum d'octets,
proxy_connect_timeout 90 ; délai d'expiration de la connexion #nginx avec le serveur backend (délai d'expiration de la connexion proxy)
proxy_send_timeout 90 ; #Temps de retour des données du serveur backend (délai d'expiration du proxy)
proxy_read_timeout 90 ; #Une fois la connexion réussie, le temps de réponse du serveur backend (délai de réception du proxy)
proxy_buffer_size 4k ; #Définissez la taille du tampon du serveur proxy (nginx) pour enregistrer l'en-tête de l'utilisateur. informations
proxy_buffers 4 32k ; tampon #proxy_buffers, la page Web moyenne est définie en dessous de 32k
proxy_busy_buffers_size 64k ; #Taille du tampon sous charge élevée (proxy_buffers*2)
proxy_temp_file_write_size 64k;
#Définir la taille du dossier cache, supérieure à cette valeur, sera transmis depuis le serveur en amont}
#Définir l'adresse de l'état nginx
local /NginxStatus { stub_status on; access_log on; auth_basic "NginxStatus"; auth_basic_user_file conf/htpasswd;
Le contenu du fichier htpasswd peut être généré à l'aide de l'outil htpasswd fourni par Apache. |jspx|do)?$ { proxy_set _header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded -Pour $ proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:8080; } #Tous les fichiers statiques sont lus directement par nginx sans passer par Tomcat ou résine emplacement ~ .*.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3| wma)${
🎜> } }}
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!