Nginx ("engine x") est un logiciel open source qui prend en charge les services www et les services proxy hautes performances et à haute concurrence.
a été développé par le Russe Igor Sysoev et a été utilisé à l'origine sur le grand site Web russe www.rambler.ru.
Nginx présente les caractéristiques d'une concurrence élevée et d'une faible consommation de ressources système.
Nginx peut fonctionner sur des systèmes d'exploitation tels que UNIX, Linux, DSB, Mac OS X, Solaris et Windows.
Prise en charge d'une concurrence élevée : peut prendre en charge des dizaines de milliers de connexions simultanées
Faible consommation de ressources : avec 30 000 connexions simultanées, start 10 Chaque thread consomme moins de 200 Mo de mémoire.
Peut effectuer un proxy inverse HTTP et une mise en cache accélérée, c'est-à-dire une fonction d'équilibrage de charge, une fonction de vérification de l'état intégrée pour le serveur de nœud RS
Possède la fonction de mise en cache d'un logiciel de mise en cache professionnel tels que Squid#🎜 🎜#
Supporte le modèle d'événement d'E/S réseau asynchrone1.3 La principale application fonctionnelle du logiciel NginxEn tant que logiciel de service Web#🎜 🎜#Service de proxy inverse et d'équilibrage de charge
Service de mise en cache des données d'entreprise frontales
2.1 Nginx. comme scénario d'application de serveur Web#🎜🎜 #
Utilisez Nginx pour exécuter HTML, JS, CSS, de petites images et d'autres données statiques Nginx combiné avec FastCGI pour exécuter des programmes dynamiques tels que PHP # 🎜🎜#2.2 Comment choisir un serveur Web
Au travail, choisissez le service métier approprié logiciel selon vos besoins :
# 🎜🎜#Entreprise statique : Dans les scénarios de forte concurrence, Nginx est préféré 🎜#Il existe de nombreuses méthodes d'installation, cet article utilise la méthode de compilation et d'installation. Si un déploiement à grande échelle est requis, le package RPM peut être personnalisé en fonction des besoins de l'entreprise, puis installé via Ansible.
Afficher la version actuelle du système :
cat /etc/redhat-release uname -r
CentOS release 6.10 (Final) 2.6.32-754.el6.x86_64
Utilisez la méthode yum pour install pcre :
yum -y install pcre pcre-devel rpm -qa pcre pcre-devel
pcre-7.8-7.el6.x86_64 #🎜 🎜#
Vérifiez si openssl et openssl-devel sont installés :
rpm -qa openssl openssl-devel
Résultat : Sinon, utilisez yum pour install#🎜 🎜#
openssl-1.0.1e-57.el6.x86_64 openssl-devel-1.0.1e-57.el6.x86_64
mkdir -p /app/nginx-1.8.1 mkdir -p /server/tools cd /server/tools/
Compile :#🎜 🎜#Créez un utilisateur nginx :wget -q http://nginx.org/download/nginx-1.8.1.tar.gzCopier après la connexionuseradd nginx -s /sbin/nologin -MCopier après la connexion
Décompressez le progiciel et entrez dans le répertoire décompressé :tar xf nginx-1.8.1.tar.gz cd nginx-1.8.1Copier après la connexion
./configure --user=nginx --group=nginx --prefix=/app/nginx-1.8.1/ --with-http_stub_status_module --with-http_ssl_module
Installation :
make make install
Créer un lien logiciel : pratique à utiliser et à mettre à niveau la version
ln -s /app/nginx-1.8.1/ /app/nginx
Test avant le lancement : # 🎜🎜#
/app/nginx/sbin/nginx -t
Démarrez le service Nginx et vérifiez le port :
/app/nginx/sbin/nginx netstat -utpln | grep 80
Résultat : #🎜 🎜#
# 🎜🎜#tcp 0 0 0.0.0.0:80 0.0.0.0:* 13689/nginx
curl 192.168.1.31
Résultat :<!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sans-serif; } </style> </head> <body> <h2>Welcome to nginx!</h2> <p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p> <p>For online documentation and support please refer to <a href="http://nginx.org/" rel="external nofollow" >nginx.org</a>.<br/> Commercial support is available at <a href="http://nginx.com/" rel="external nofollow" >nginx.com</a>.</p> <p><em>Thank you for using nginx.</em></p> </body> </html>
4.1 Répertoire Nginx Description structurelletree /app/nginxCopier après la connexion4.2 Fichier de configuration principal Nginx/app/nginx ├── client_body_temp ├── conf #nginx配置文件目录 │ ├── fastcgi.conf #fastcgi相关参数配置文件 │ ├── fastcgi.conf.default │ ├── fastcgi_params #fastcgi参数文件 │ ├── fastcgi_params.default │ ├── koi-utf │ ├── koi-win │ ├── mime.types #媒体类型 │ ├── mime.types.default │ ├── nginx.conf #Nginx主配置文件 │ ├── nginx.conf.default │ ├── scgi_params #scgi配置文件 │ ├── scgi_params.default │ ├── uwsgi_params #uwsgi配置文件 │ ├── uwsgi_params.default │ └── win-utf ├── fastcgi_temp #fastcgi临时数据文件 ├── html #默认站点目录 │ ├── 50x.html #错误页面显示文件 │ └── index.html #默认的站点首页文件 ├── logs #默认日志路径 │ ├── access.log #默认访问日志文件 │ ├── error.log #默认错误日志文件 │ └── nginx.pid #Nginx的pid文件 ├── proxy_temp #临时目录 ├── sbin #Nginx命令目录 │ ├── nginx #启动命令 │ └── nginx.old ├── scgi_temp #临时目录 └── uwsgi_temp #临时目录 9 directories, 22 filesCopier après la connexion
Aller commenter et afficher le fichier de configuration :
egrep -v "#|^$" /app/nginx/conf/nginx.conf.default
worker_processes 1; #worker进程数量 events { #事件区块开始 worker_connections 1024; #单worker进程支持的最大连接 } #事件区块结束 http { #HTTP区块开始 include mime.types; #支持的媒体类型库 default_type application/octet-stream; #默认媒体类型 sendfile on; #开启高效传输模式 keepalive_timeout 65; #连接超时 server { #server区块开始 listen 80; #服务端口,默认80 server_name localhost; #域名主机名 location / { #location区块开始 root html; #站点根目录 index index.html index.htm; #默认首页文件 } #location区块结束 error_page 500 502 503 504 /50x.html;#对应状态码及回应 location = /50x.html { #location开始回应50x.html root html; #站点目录为html } } } #HTTP区块结束
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!