Maison  >  Article  >  Opération et maintenance  >  Méthodes d'optimisation des services Nginx

Méthodes d'optimisation des services Nginx

WBOY
WBOYavant
2023-05-13 19:28:101138parcourir

L'optimisation du service Nginx peut être optimisée sous plusieurs aspects : masquage des numéros de version, modification des utilisateurs et des groupes, configuration de la durée du cache des pages Web, suppression des journaux et définition des délais d'expiration de connexion.

1. Numéro de version masqué

Le numéro de version de Nginx doit être masqué dans l'environnement de production pour éviter de divulguer la version de Nginx et empêcher les utilisateurs de cibler une version spécifique. Pour vérifier la version de Nginx, utilisez la commande curl -I http://172.16.10.10/ dans CentOS.

[[email protected] ~]# curl -I http://172.16.10.10/ HTTP/1.1 200 OK Server: nginx/1.12.0   #Nginx版本信息 Date: Fri, 29 Jun 2018 08:52:27 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes<br>

Il existe deux façons de masquer le numéro de version. La première consiste à modifier le fichier de code source de Nginx pour spécifier de ne pas afficher le numéro de version. La seconde consiste à modifier le fichier de configuration principal de Nginx.

La méthode pour modifier le fichier de configuration principal est la suivante :

Définissez la valeur de l'option server_tokens dans le fichier de configuration Nginx sur off. S'il n'existe aucun élément de configuration de ce type, ajoutez-le simplement.

[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf   ...........    #省略内容     http {        include       mime.types;        default_type  application/octet-stream;        server_tokens     off;    #关闭版本号 ............    #省略内容<br>
rrree

Visitez à nouveau le site Web, seul Nginx est affiché et le numéro de version a été masqué.

[[email protected] ~]# nginx -t    #测试配置文件 nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful<br>

Le fichier de code source de Nginx contient des informations de version, qui peuvent être définies à volonté. Ensuite, recompilez et installez, et les informations de version seront masquées.

[[email protected] ~]# service nginx restart #重新启动nginx服务 [[email protected] ~]# curl -I http://172.16.10.10/ HTTP/1.1 200 OK Server: nginx       #nginx隐藏了版本号 Date: Fri, 29 Jun 2018 09:09:36 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes<br>

Recompiler et installer

[[email protected] ~]# vim /opt/nginx-1.12.0/src/core/nginx.h #编辑源码文件 #define NGINX_VERSION      "1.1.1"              #修改版本号 #define NGINX_VER          "IIS" NGINX_VERSION  #修改服务器类型<br>

Visitez à nouveau l'URL et seules les informations sur la version modifiée seront affichées.

[[email protected] ~]# cd /opt/nginx-1.12.0/ [[email protected] nginx-1.12.0]#./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install<br>

2. Modifier les utilisateurs et les groupes

Le processus d'exécution Nginx nécessite la prise en charge des utilisateurs et des groupes pour mettre en œuvre le contrôle d'accès lors de la lecture des fichiers du site Web. Le processus principal est créé par root et les processus enfants sont créés par des utilisateurs et des groupes spécifiés. Nginx utilise par défaut le compte utilisateur personne et le compte groupe, qui doivent généralement être modifiés.

(1) Spécifiez l'utilisateur et le groupe lors de la compilation de Nginx, c'est-à-dire que lors de la configuration de nginx, spécifiez les paramètres de l'utilisateur et du groupe après ./configure.
[[email protected] nginx-1.12.0]# service nginx restart      #重启nginx服务 [[email protected] nginx-1.12.0]# curl -I  http://172.16.10.10/HTTP/1.1 200 OK Server: IIS1.1.1            #nginx的版本信息 Date: Fri, 29 Jun 2018 09:30:09 GMT Content-Type: text/html Content-Length: 483 Last-Modified: Fri, 29 Jun 2018 06:56:20 GMT Connection: keep-alive ETag: "5b35d814-1e3" Accept-Ranges: bytes<br>
(2) Modifiez le fichier de configuration Nginx nginx.conf pour spécifier l'utilisateur et le groupe.
[[email protected] ~]# cd /opt/nginx-1.12.0/ [[email protected] nginx-1.12.0]#./configure --prefix=/usr/local/nginx  --user=nginx    #指定用户名是nginx --group=nginx   #指定组名是nginx --with- && make && make install<br>

Redémarrez nginx pour vérifier l'état d'exécution du processus. Le processus principal est créé par le compte root et le sous-processus est créé par nginx.

[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf  user nginx nginx;     #修改用户为nginx,组为nginx<br>

3. Configurer la durée du cache des pages Web

Une fois que Nginx a renvoyé les données de la page Web au client, le temps de cache peut être défini de manière à ce que les futures demandes pour le même contenu puissent être renvoyées directement afin d'éviter les demandes répétées et d'accélérer l'accès. Généralement, cela n'est défini que pour les ressources statiques, et là. il n'est pas nécessaire de définir la durée du cache pour les pages Web dynamiques. Les étapes de l'opération sont les suivantes :

(1) Utilisez les images comme objets de cache et placez game.jpg dans le répertoire du site Web Nginx.
[[email protected] ~]# ps aux | grep nginx root      14923  0.0  0.0  20540   624 ?        Ss   17:30   0:00 nginx: master process /usr/local/nginx/sbin/nginx   #主进程由root创建 nginx     14925  0.0  0.1  22984  1412 ?        S    17:30   0:00 nginx: worker process           #子进程由nginx创建 root      19344  0.0  0.0 112720   984 pts/0    R+   17:47   0:00 grep --color=auto nginx<br>
(2) Visitez http://172.16.10.10/game.jpg, puis utilisez l'outil Fidder pour capturer le paquet et vérifier le message de réponse. Il n'y a aucune information en cache sur l'image.

Méthodes doptimisation des services Nginx

(3) Modifiez le fichier de configuration, ajoutez le paramètre expire à la nouvelle section d'emplacement et spécifiez la durée du cache, 1d signifie un jour.
[[email protected] ~]# cd /usr/local/nginx/html/    #Nginx的网站目录 [[email protected] html]# ls 50x.html  error.png  game.jpg  index.html  test.html<br>
(4) Redémarrez le service nginx, accédez à l'URL pour capturer les paquets et le message de réponse contient le paramètre Expire, qui indique la durée du cache.
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf     location ~\.(gif|jpg|jepg|png|bmp|ico)$ {    #加入新的location         root html;         expires 1d;     #指定缓存时间         }<br>

[

Méthodes doptimisation des services Nginx

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