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.
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>
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>
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.
[[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>
[[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>
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 :
[[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>
[[email protected] ~]# cd /usr/local/nginx/html/ #Nginx的网站目录 [[email protected] html]# ls 50x.html error.png game.jpg index.html test.html<br>
[[email protected] ~]# vim /usr/local/nginx/conf/nginx.conf location ~\.(gif|jpg|jepg|png|bmp|ico)$ { #加入新的location root html; expires 1d; #指定缓存时间 }<br>
[
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!