Home  >  Article  >  Backend Development  >  Nginx reverse proxy and load balancing deployment guide

Nginx reverse proxy and load balancing deployment guide

WBOY
WBOYOriginal
2016-08-08 09:21:54928browse

1. Installation

1) Download the latest version of Nginx (currently version 1.9.2) from the Nginx official website download page (http://nginx.org/en/download.html);

2) Unzip and copy to deployment Table of contents.

2. Start and stop Nginx

Nginx currently only supports command line operations. Before operating, enter the Dos command environment and enter the Nginx deployment directory.

1) Start Nginx: start nginx

2) Stop Nginx: nginx -s stop

3) Restart after modifying the configuration: nginx -s reload

These three commands can be made into bat files and placed in the deployment directory to facilitate subsequent operations.

start nginx.bat file content: start nginx

stop nginx.bat file content: nginx -s stop

reload nginx.bat file content: nginx -s reload

3. Reverse proxy configuration

Modify the deployment directory Contents of the nginx.conf file (such as nginx-1.5.13confnginx.conf) in the conf subdirectory can be adjusted to adjust related configurations.

Reverse proxy configuration example:

location / {

          #Set the host header and the client’s real address so that the server can obtain the client’s real IP

            proxy_set_header Host $host;

           _addr;

         proxy_set_header

                    proxy_pass http://192.168.1.1;                                                                               Situation modified.

4. Load balancing configuration

nginx’s upstream defaults to a polling method to achieve load balancing. In this method, each request is assigned to different back-end servers one by one in chronological order. If the back-end server goes down, Can be automatically eliminated.

Another way is ip_hash: each request is allocated according to the hash result of the accessed IP, so that each visitor has fixed access to a back-end server, which can solve the session problem.

Load balancing configuration example:

upstream backend {

                                                                           ;

                                                                                                      use using using using       out out out out through out out out through out’s ’   ’ ’s ’ ’s ’ through ’ through ’ through ’ through ‐ ‐ ‐ ‐ ‐ w ‐ t

}

Upstream naming and server address are modified according to actual conditions.

5. Complete configuration example

nginx.conf:

worker_processes 1;

events {

worker_connections 1024;

}

http {

include mime.types;

default_type application/octet-stream;

sendfile on;

keepalive_timeout 65;

upstream backend {

                                                                               server 192. listen 80;

server_name 2;

                                                                                                                                    using             ’     ’           through ’ s   through   through through use through ’ through ’ through ’ through ’ through ’ through ’ s ’ through ’ s ’ through ’ s through ’ s through ’ s through to ’ through through through through through through through through through through through through through through through through‐‐ through through to‐ through through between‐server to tolding to behalf behalf to basis to date

       

           proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for;

                                                                                    ’   ’ s ’ s ’ s           out out out out out out through ’ ’ ‐ ‐ ‐ ‐‐ ​ ​ ​ ​ ​                                                     use to

                                                                                                                                                                                              , may not be reproduced without the permission of the blogger.

The above introduces the Nginx reverse proxy and load balancing deployment guide, including the relevant content. I hope it will be helpful to friends who are interested in PHP tutorials.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn