Nginx反向代理和负载均衡实践
程序员文章站
2024-02-21 10:24:34
...
参考文档 http://www.leixuesong.cn/396
反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
在这里我用三台 虚拟机 测试
反向代理 192.168.129.128 真实服务器1 192.168.129.130 真实服务器2 192.168.129.130
在nginx.conf添加 部分就好
user www www; worker_processes auto;
error_log /home/wwwlogs/nginx_error.log crit;
pid /usr/local/nginx/logs/nginx.pid;
#Specifies the value for maximum file descriptors that can be opened by this process.
worker_rlimit_nofile 51200; events
{
use epoll;
worker_connections 51200;
multi_accept on;
}
http
{
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
upstream 192.168.129.128 {
server 192.168.129.130:80 weight=1;
server 192.168.129.131:80 weight=1;
}
server
{
listen 80 default_server;
#listen [::]:80 default_server ipv6only=on;
server_name _;
index index.html index.htm index.php;
root /home/wwwroot/default;
include enable-php.conf;
location / {
#set Reverse proxy address
proxy_pass http://192.168.129.128;
#设置主机头和客户端真实地址,以便服务器获取客户端真实IP
proxy_set_header HOST $host;
proxy_set_header X-realIp $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
access_log /home/wwwlogs/access.log;
}
include vhost/*.conf;
}
然后重启 nginx