Maison  >  Article  >  Opération et maintenance  >  Comment configurer l'hôte virtuel Nginx

Comment configurer l'hôte virtuel Nginx

王林
王林avant
2023-05-15 22:46:042688parcourir

1. Configuration de l'hôte virtuel Nginx

Hôte virtuel : Normalement, afin de rendre chaque serveur disponible à plus d'utilisateurs, un serveur peut être divisé en plusieurs sous-serveurs virtuels, et chaque sous-serveur est indépendant les uns des autres. Ces serveurs sont séparés en fonction de la technologie de virtualisation, de sorte qu'un serveur puisse être virtualisé en plusieurs sous-serveurs. Nous appelons le sous-serveur un hôte virtuel. Après avoir configuré le serveur Nginx, il n'y a qu'un seul serveur Nginx pour le moment. Si nous configurons l'hôte virtuel sur ce serveur, nous pouvons diviser un serveur Nginx en plusieurs sous-serveurs indépendants.

Il y a deux étapes principales pour configurer un hôte virtuel dans Nginx :

1 Créez une adresse IP d'hôte virtuel

Vérifiez l'adresse IP de votre hôte via ifconfig, puis créez une adresse IP d'hôte virtuel basée sur l'adresse IP de l'hôte.

Command: ifconfig Eth2: 2 121.42.41.145 Broadcast 121.42.43.255 Netmask 255.255.252.0

a été indiqué sur la figure après l'exécution:

Comment configurer lhôte virtuel Nginx

2.

nginx.conf : Ce fichier est le fichier de configuration système de nginx. Il est recommandé de ne pas le modifier. Nous utilisons généralement un fichier personnalisé, puis chargeons le fichier pour obtenir le même effet.

Créez le fichier de configuration xnzj.conf dans le répertoire /usr/local/nginx/conf.

#========工作衍生进程数(建议设置成与cpu核数相同或者2倍)==========
worker_processes  1;
#===========设置最大连接数==============
events {
    worker_connections  1024;
}
#============http协议的相关信息==============
http {
    server {
        #===========要监听虚拟主机的IP地址与端口==========
        listen 121.42.41.144:80;
        #===========该虚拟主机的名称===========
        server_name  121.42.41.144;
        #===============该虚拟主机服务器的日志文件=========
        access_log  logs/server144.access.log  combined;
        #============== 默认请求资源=============
        location / {
            root   html/server144;
            #===== nginx会先找index.html 如果没找到就找index.htm
            index  index.html index.htm;
        }
    }
    server {
        #===========要监听虚拟主机的IP地址与端口==========
        listen 121.42.41.145:80;
        #===========该虚拟主机的名称===========
        server_name  121.42.41.145;
        #===============该虚拟主机服务器的日志文件=========
        access_log  logs/server145.access.log  combined;
        #============== 默认请求资源=============
        location / {
            root   html/server145;
            index  index.html index.htm;
        }
    }
}

Créez la ressource par défaut de l'hôte virtuel correspondante sous /usr/local/nginx/html

/usr/local/nginx/html/server144/index.html ;/usr/local/nginx/html/server145/index . html

Laissez Nginx charger notre fichier de configuration personnalisé (mon fichier de configuration : xnzj.conf)

Exécuter la commande : /usr/local/nginx/sbin/nginx -c /usr/local/nginx/ conf/xnzj.conf ​​​​​

2. Configuration des journaux

Lorsque le serveur Nginx est en cours d'exécution, diverses opérations seront effectuées et ces informations sur les opérations clés seront enregistrées dans des fichiers. Ces fichiers sont appelés fichiers journaux. Les enregistrements des fichiers journaux sont formatés. Nous pouvons enregistrer selon le format par défaut du système, ou nous pouvons enregistrer selon notre format personnalisé. Nous pouvons utiliser la directive log_format pour définir le format d'enregistrement du fichier journal du serveur Nginx.

Méthode de configuration : ouvrez le fichier nginx.conf et activez le code inférieur commenté.

#combined:日志输出格式 
     #remote_addr 客户端请求地址 
     #remote_user:客户端用户名  
     #request:请求的地址(服务器资源位置) 
     #status:用户的请求状态 
     #body_bytes_sent:服务器响应的资源大小(字节数),  
     #http_referer:源网页    
     #http_user_agent:客户端浏览器信息  
     #http_x_forwarded_for:客户端Ip地址  
    log_format  combined  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                     '"$http_user_agent" "$http_x_forwarded_for"';
    #==================日志文件  access_log:off;表示关闭日志===========
    access_log  logs/access.log  combined;

Coupe de journaux :

Afin de rendre le stockage des fichiers journaux Nginx plus raisonnable et ordonné, nous devons stocker les fichiers journaux séparément. Par exemple, nous pouvons les séparer par heure. les fichiers journaux de demain sont stockés dans un fichier. Le fichier journal est stocké dans un autre nouveau fichier et ainsi de suite. À ce stade, nous utiliserons l’opération de découpe du fichier journal.

Étapes de coupe du journal :

1. Créez un fichier batch

Exécutez dans le répertoire /usr/local/nginx/logs [root@iZ28b4kreuaZ logs]# touch cutlog.sh

2. :

D=$(date +%Y%m%d)
mv /usr/local/nginx/logs/access.log ${D}.log
kill -USR1 $(cat /usr/local/nginx/nginx.pid)

3. Exécutez régulièrement le fichier batch. Exécutez la commande crontab -e pour ajouter le contenu suivant

23 59 *** /bin/bash /usr/local/nginx/logs/cutlog.sh

3. Configuration du cache Nginx

Lorsque nous parcourons une page Web dans le navigateur, nous stockons certaines informations sur la page Web (telles que les images sur la page Web) lorsque nous parcourons la page Web pour la deuxième fois, cette page Web. les informations sur l'ordinateur peuvent être chargées localement, ce qui sera beaucoup plus rapide. Ces informations stockées localement sont appelées cache. Mais lorsqu’il y a trop de caches, les fichiers cache seront très volumineux, ce qui affectera nos activités Internet normales. Le cache doit donc être nettoyé régulièrement.

Méthode de configuration : /usr/local/nginx/conf/nginx.conf Ajoutez le code suivant sous l'emplacement dans http{server{}} du fichier de configuration :

#====================缓存配置=============
       location ~.*\.(jpg|png|swf|gif)${
            expires 2d;#两天后清除
       }
       location ~.*\.(css|js)?${
        expires:1h;#
       }

4. Configuration de la compression gzip de Nginx

Nous l'avons mentionné ici La fonction de compression fait référence à la technologie de compression gzip. Grâce à la technologie de compression gzip, la taille du contenu de la page Web originale peut être compressée à 30 % de sa taille originale. De cette manière, lorsque les utilisateurs accèdent à la page Web, la vitesse d'accès sera beaucoup plus rapide car le contenu transmis est beaucoup plus petit que celui-ci. le contenu original. Le serveur Nginx prend en charge la technologie de compression gzip, mais il doit être configuré.

Méthode de configuration : /usr/local/nginx/conf/nginx.conf Ajoutez le code suivant au http{ } du fichier de configuration :

gzip  on;#开启压缩
    gzip_min_lenth 1k;#设置使用压缩的最小单位
    gzip_buffers 4 16k;#创建压缩文件缓存大小
    gzip_http_version 1.1;#使用压缩技术的协议 及其版本
    gzip_vary:on;#开启判断客户端浏览器是否支持压缩技术

5. Nginx répertorie automatiquement la configuration du répertoire

Lorsque le client accède au serveur via le navigateur Lors de la saisie d'un certain dossier, s'il existe un fichier de page d'accueil par défaut sur le dossier, tel que index.html, l'utilisateur accédera automatiquement à la page Web index.html. Cependant, lorsqu'il n'y a pas de fichier de page d'accueil par défaut tel que index.html, en supposant qu'il y ait d'autres fichiers dans le dossier à ce moment-là, l'utilisateur ne peut pas accéder au contenu de notre dossier sans configurer la fonction de liste automatique des répertoires. Mais après avoir configuré la fonction de liste automatique des répertoires, nous pouvons voir une liste de tous les fichiers du dossier et la liste des répertoires est automatiquement répertoriée.

Deux conditions sont requises pour implémenter la liste automatique des répertoires :

1. Il n'y a pas de fichier de page d'accueil par défaut tel qu'un index dans le dossier consulté.

2.服务器配置了自动列目录功能。

配置方式:/usr/local/nginx/conf/nginx.conf 配置文件的http{ server{}}中添加 如下代码:

location / {
            root   html;
            index  index.html index.htm;
            autoindex on;#开启自动列目录
        }

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer