码迷,mamicode.com
首页 > Windows程序 > 详细

Windows/Ubuntu下使用nignx实现负载均衡

时间:2016-07-02 21:24:05      阅读:276      评论:0      收藏:0      [点我收藏+]

标签:

Windows/Ubuntu下使用nignx实现负载均衡

一、Ubuntu下实现

1、首先安装nginx服务器 sudo apt-get install nginx

2、 Cd /etc/nginx/

  Sudo vim sites-avaliables/default

 

①、在server节点外添加:

 

upstream server_pool  {

server 192.168.0.88:80 weight=4 max_fails=2 fail_timeout=30s;

server 192.168.0.89:80 weight=2 max_fails=2 fail_timeout=30s;

}

#HTTP 负载均衡模块。upstream 这个字段设置一群服务器,可以将这个字段放在

proxy_pass fastcgi_pass 指令中作为一个单独的实体,它们可以是监听不同端口的服务器,并且

也可以是同时监听 TCPUnix socket 的服务器。 服务器可以指定不同的权重,默认为 1

 

②、修改server节点

server {

… …

location / {

proxy_pass http://server_pool/;

#确定需要代理的 URL,端口或 socket

proxy_redirect off;

#如果需要修改从后端服务器传来的应答头中的"Location""Refresh"字段,可以用这个指令

设置。

proxy_set_header X-Real-IP $remote_addr;

#这个指令允许将发送到后端服务器的请求头重新定义或者增加一些字段。 这个值可以是一个文本,变量或者它们的组合

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header Host $host;

proxy_next_upstream error timeout invalid_header http_500 http_502 http_503

http_504 http_404;

#确定在何种情况下请求将转发到下一个服务器:

#error - 在连接到一个服务器,发送一个请求,或者读取应答时发生错误。

#timeout - 在连接到服务器,转发请求或者读取应答时发生超时。

#invalid_header - 服务器返回空的或者错误的应答。

#http_500 - 服务器返回 500 代码。

#http_502 - 服务器返回 502 代码。

#http_503 - 服务器返回 503 代码。

#http_504 - 服务器返回 504 代码。

#http_404 - 服务器返回 404 代码。

#off - 禁止转发请求到下一台服务器。

}

 

③、重启nginx服务器

Sudo service nginx restart

 

 

虚拟主机配置:配置http://root.com虚拟主机

①、sudo cp /ect/nginx/sites-avaliables/default /etc/nginx/sites-avliables/root

②、sudo vim etc/nginx/sites-avliables/root

③、修改server节点

 

/etc/nginx/nginx.conf

 

server {

listen 80;

root 80.com;

}

server {

listen 8080;

root 8080.com;

}

 

Apache配置虚拟主机:配置http://root.com虚拟主机

 

①、sudo cp /ect/nginx/sites-avaliable/default /etc/nginx/sites-avliable/root

②、sudo vim etc/nginx/sites-avliables/root

③、修改配置

 

 1 <VirtualHost *:80>
 2 
 3         ServerAdmin webmaster@localhost
 4 
 5         ServerName web.root.com
 6 
 7         DocumentRoot /var/www/root
 8 
 9         <Directory />
10 
11                 Options FollowSymLinks
12 
13                 AllowOverride None
14 
15         </Directory>
16 
17         <Directory /var/www/root/>
18 
19                 Options Indexes FollowSymLinks MultiViews
20 
21                 AllowOverride None
22 
23                 Order allow,deny
24 
25                 allow from all
26 
27         </Directory>
28 
29  
30 
31         ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
32 
33         <Directory "/usr/lib/cgi-bin">
34 
35                 AllowOverride None
36 
37                 Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
38 
39                 Order allow,deny
40 
41                 Allow from all
42 
43         </Directory>
44 
45  
46 
47         ErrorLog ${APACHE_LOG_DIR}/error.log

 

 

④、sudo ln -s /etc/apache2/sites-avaliable/root  /etc/apache2/sites-avaliable/root ;

⑤、sudo service apache2 restart

 

 

二、Windows   nginx.conf

 1 worker_processes  4;
 2 
 3    upstream test.com{
 4 
 5       server 192.168.1.155;
 6 
 7       server 127.0.0.1:80;
 8 
 9    }
10 
11  
12 
13     server {
14 
15         listen       8080;
16 
17         server_name  localhost;
18 
19          
20 
21         #charset koi8-r;
22 
23  
24 
25         #access_log  logs/host.access.log  main;
26 
27         root   "E:/2016phpstudy/WWW";
28 
29         location / {
30 
31             index  index.html index.htm index.php l.php;
32 
33            autoindex  off;
34 
35      #其中jq_one 对应着upstream设置的集群名称
36 
37      proxy_pass         http://test.com;
38 
39      #设置主机头和客户端真实地址,以便服务器获取客户端真实IP
40 
41      proxy_set_header   Host             $host;
42 
43      proxy_set_header   X-Real-IP        $remote_addr;
44 
45      proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
46 
47  
48 
49         }

 

Windows/Ubuntu下使用nignx实现负载均衡

标签:

原文地址:http://www.cnblogs.com/oyxp/p/5636008.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!