Nginx, Geo IP and Distributed Server

When you have many networks, which are located far apart and in different location. You want users to access the server closest to their network. town1 users when accessing the main server, the server will diredirect town1.example.com, and the town2’s users will be redirected to town2.example.com.

http {
     geo $geo {
          default      default;
          1.1.1.0/24   town1;
          1.1.2.0/24   town2;
          1.1.3.0/24   town3;
          ...
     }

     server {
          location / {
               rewrite ^(.*)$ http://$geo.example.com$1 permanent;
          }
     ...
     }
...
}

1 Comment

Leave a Reply

Your email address will not be published. Required fields are marked *