Nginx reverse agent and load balancing practice

Reference documents http://www.leixuesong.cn/396 

Baidu entry https://baike.baidu.com/item/%E5%8F%8D%E5%90%91%E4%BB%A3%E7%90%86/7793488?fr=aladdin&fromid=11207704&fromtitle=Reverse+Proxy

 

 

Reverse Proxy means that proxy server To accept the connection request on the internet, and then forward the request to the server on the internal network, and return the result from the server to the client requesting connection on the internet. At this time, the proxy server acts as a reverse proxy server.

Here I test with three virtual machines

Reverse agent 192.168.129.128 real server 1 192.168.129.130 real server 2 192.168.129.130

Just add some in 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;

        #Set the host header and the real address of the client so that the server can obtain the real IP address of the client
                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;
}

Then restart nginx

 

 

 

 

 

Tags: Nginx PHP network

Posted on Sun, 09 Feb 2020 06:54:00 -0800 by ginger76