Detailed explanation of nginx front-end distribution method based on $remote_addr

Detailed explanation of nginx front-end distribution method based on $remote_addr

The requirements are as follows:

There are multiple servers under the domain name. Now we are testing a certain region. Let the IP users in a certain region access only one server and test it separately. If there is no problem, all servers will be updated. If there is a problem, the impact will be small. We will find and solve the problem in time.

Solution:

Use the nginx module to configure matching rules on the front-end load balancing forwarding machine;

In the nginx configuration vhost, add a piece of code to the location section under the domain name

If $remote_addr matches the ip, forward it to abc_test_server;

server {
  listen 80;
  server_name abc.com.cn;
  access_log /dev/null;
  error_log /data/logs/error.log;
  
  location / {

  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      if ($remote_addr ~ "202.96.134.100") 
       {
           proxy_pass http://abc_test_server;
            break;
        }
  proxy_pass http://abc_server;
  }
}

The load balancing configuration also needs to add a section

#abc_test only
upstream abc_test_server {
  server 192.168.20.10:80;
  
}

#abc.com.cn
upstream abc_server {
  server 192.168.20.11:80;
  server 192.168.20.12:80;
  server 192.168.20.13:80;
}

The set IP will be directly distributed to the backend server 192.168.20.10 for testing;

The above is the full content of this article. I hope it will be helpful for everyone’s study. I also hope that everyone will support 123WORDPRESS.COM.

You may also be interested in:
  • Detailed explanation of Nginx configuration required for front-end
  • How to use Nginx to solve front-end cross-domain problems
  • Nginx configuration for front-end development (scenario)
  • Several methods of deploying multiple front-end projects with nginx
  • Detailed explanation of how Nginx solves the problem of cross-domain access to front-end resources
  • Detailed explanation of what nginx can do on the front end

<<:  Node+express to achieve paging effect

>>:  MySQL Server 8.0.13.0 Installation Tutorial with Pictures and Text

Recommend

Summary of MySQL5 green version installation under Windows (recommended)

1 Download MySQL Download address: http://downloa...

Detailed explanation of :key in VUE v-for

When key is not added to the v-for tag. <!DOCT...

Detailed explanation of redundant and duplicate indexes in MySQL

MySQL allows you to create multiple indexes on th...

HTML basics summary recommendation (paragraph)

HTML Paragraph Paragraphs are defined by the <...

Summary of changes in the use of axios in vue3 study notes

Table of contents 1. Basic use of axio 2. How to ...

How to install nginx on win10

Because the company asked me to build a WebServic...

Web page experience: planning and design

1. Clarify the design direction <br />First,...

Two practical ways to enable proxy in React

Two ways to enable proxy React does not have enca...

Detailed explanation of how to create MySql scheduled tasks in navicat

Detailed explanation of creating MySql scheduled ...

Mini Programs use Mini Program Cloud to implement WeChat payment functions

Table of contents 1. Open WeChat Pay 1.1 Affiliat...

Common tags in XHTML

What are XHTML tags? XHTML tag elements are the b...

Comprehensive website assessment solution

<br />Sometimes you may be asked questions l...

XHTML Getting Started Tutorial: Form Tags

<br />Forms are an important channel for use...

JavaScript implements simple scroll window

This article example shares the specific code of ...