Nginx 负载均衡应该如何配置

发布时间:2019-08-01编辑:脚本学堂
本文仅提供nginx简单负载均衡的配置文件nginx.conf,供大家学习参考。

本文仅提供nginx简单负载均衡的配置文件nginx.conf,供大家学习参考。

www.xxx.com 和 blog.xxx.com 域名均指向 Nginx 所在的服务器IP。
用户访问http://www.xxx.com,将其负载均衡到192.168.1.2:80、192.168.1.3:80、192.168.1.4:80、192.168.1.5:80四台服务器。
用户访问http://blog.xxx.com,将其负载均衡到192.168.1.7服务器的8080、8081、8082端口。

配置文件nginx.conf:
 

复制代码 代码如下:

user  www www;
worker_processes 10;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

#最大文件描述符
worker_rlimit_nofile 51200;

events
{
      use epoll;
      worker_connections 51200;
}

http
{
      include       conf/mime.types;
      default_type  application/octet-stream;
      keepalive_timeout 120;
      tcp_nodelay on;

      upstream  www.xxx.com  {
              server   192.168.1.2:80;
              server   192.168.1.3:80;
              server   192.168.1.4:80;
              server   192.168.1.5:80;
      }

      upstream  blog.xxx.com  {
              server   192.168.1.7:8080;
              server   192.168.1.7:8081;
              server   192.168.1.7:8082;
      }

      server
      {
              listen  80;
              server_name  www.xxx.com;

              location / {
                       proxy_pass        http://www.xxx.com;
                       proxy_set_header   Host             $host;
                       proxy_set_header   X-Real-IP        $remote_addr;
                       proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
              }

              log_format  www_s135_com  '$remote_addr - $remote_user [$time_local] $request '
                                '"$status" $body_bytes_sent "$http_referer" '
                                '"$http_user_agent" "$http_x_forwarded_for"';
              access_log  /data1/logs/www.log  www_s135_com;
      }

      server
      {
              listen  80;
              server_name  blog.xxx.com;

              location / {
                       proxy_pass        http://blog.xxx.com;
                       proxy_set_header   Host             $host;
                       proxy_set_header   X-Real-IP        $remote_addr;
                       proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
              }

              log_format  blog_s135_com  '$remote_addr - $remote_user [$time_local] $request '
                                '"$status" $body_bytes_sent "$http_referer" '
                                '"$http_user_agent" "$http_x_forwarded_for"';
              access_log  /data1/logs/blog.log  blog_s135_com;
      }
}