Nginx ("engine x") est un serveur HTTP et proxy inverse hautes performances, ainsi qu'un serveur IMAP/POP3/SMTP. En tant que serveur proxy inverse, Nginx peut accélérer les serveurs Web et dispose de fonctions d'équilibrage de charge. nginx peut éliminer automatiquement les serveurs qui ont cessé de servir pour garantir un accès normal aux services Web.
Dans cet exemple, un utilisateur accède à 192.168.1.4 et le transmet par proxy aux deux serveurs 192.168.1.2:80 et 192.168.1.3:80 pour réaliser la charge.
Ce qui suit est le fichier de configuration nginx.conf :
user www www; worker_processes 10; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; #最大文件描述符 worker_rlimit_nofile 51200; events { worker_connections 51200; } http { include conf/mime.types; default_type application/octet-stream; keepalive_timeout 120; tcp_nodelay on; #nginx的upstream默认是以轮询的方式实现负载均衡,这种方式中,每个请求按时间顺序逐一分配到不同的后端服务器, #如果后端服务器down掉,能自动剔除。另外一种方式是ip_hash:每个请求按访问ip的hash结果分配, #这样每个访客固定访问一个后端服务器,可以解决session的问题。 upstream webserver { server 192.168.1.2:80 weight=1; server 192.168.1.3:80 weight=1; } server{ listen 80; server_name localhost; location / { #设置反向代理的地址 proxy_pass http://webserver; #设置主机头和客户端真实地址,以便服务器获取客户端真实IP proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } log_format localhost '$remote_addr - $remote_user [$time_local] $request ' '"$status" $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /data1/logs/www.log localhost ; } }
Ce qui précède est le tutoriel pertinent sur le proxy inverse Nginx et la pratique de l'équilibrage de charge. J'espère que cela pourra aider tout le monde.
Recommandations associées :
Exemple de code pour remplacer le serveur Nginx par Tengine dans un environnement LNMP
Comment implémenter un proxy inverse à l'aide de Nginx en php
Explication détaillée des paramètres de configuration à haute concurrence de 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!