当前位置: 首页 > article >正文

Nginx 简单的负载均衡配置示例

www.xxxx.com 和 blog.xxxx.com 域名均指向 Nginx 所在的服务器IP。

  用户访问www.xxxx.com ,将其负载均衡到192.168.1.2:80、192.168.1.3:80、192.168.1.4:80、192.168.1.5:80四台服务器。

  用户访问http://blog.xxxx.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.xxxx.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.s135.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.xxxx.com;location / {
proxy_pass http://www.xxxx.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.s135.com;location / {
proxy_pass http://blog.xxxx.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;
}
}



  附:Nginx 的安装方法可参照《 Nginx 0.5.31 + PHP 5.2.4(FastCGI)搭建可承受3万以上并发连接数,胜过Apache 10倍的Web服务器》文章的以下段落(仅做负载均衡,无需支持PHP的安装方法):

   二、安装PHP 5.2.4(FastCGI模式)
  4、创建www用户和组,以及其使用的目录:

  三、安装Nginx 0.5.31
  1、安装Nginx所需的pcre库:
  2、安装Nginx
  3、创建Nginx日志目录

  5、启动Nginx


1、如果均衡的域名中有泛域名,或有几百个域名的话可以配置吗?

      nginx.conf
      server_name .xxxx.com; 即可支持***.xxxx.com泛域名


2、ngnix在做均衡的时候是否已经包含了cache功能?

      nginx负载均衡只做反向代理,有简单的缓冲,但不像Squid那样将cache存在本机。


3、ngnix---squid----apache取的的HTTP_X_FORWARDED_FOR是squid服务器的ip地址,如果想取真实客户端地址可以做到吗?

在nginx.conf配置文件中增加:
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

     编译squid时加上--enable-follow-x-forwarded-for
     然后在squid.conf中输入一行:
     follow_x_forwarded_for allow all

      后端的Apache取日志(httpd.conf):
       LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %h %T" combined
       取到的就是用户真实IP


http://www.lryc.cn/news/2419725.html

相关文章:

  • portlet示例_Java Portlet示例教程
  • C#让程序运行更稳健——异常、调试和测试(代码没看懂)
  • 探索数据的新型画布 - OrientDB Studio 深度解析与应用
  • Editplus如何设置中文页面
  • JAVA开发基础-XML
  • 查看电脑内存个数、主频(工作频率)、容量、位宽等的方法总结
  • onmousemove, onmouseenter 和 onmouseover 的不同。
  • 3704对象关闭时_对象关闭时,不允许操作,运行时错误3704
  • DDD究竟是什么
  • 电子爱好者DIY篇
  • File类的createNewFile()方法和createTempFile()方法
  • 如何复制一个文件
  • golang反射简介
  • 电脑系统时间同步更新时提示“RPC服务器不可用”解决办法
  • PostgreSQL数据库安装教程
  • 杀死excel所有进程
  • 苹果电脑怎么切换输入法_高顿:CPA考试技巧:巧用搜狗输入法“v”模式,非常实用!...
  • 解惑:Redis的HSCAN命令中COUNT参数的失效场景
  • JINK/SWD找不到内核,故障汇总
  • 调试编译错误信息总结
  • oracle 如何实现excel的正态分布函数normdist
  • CAPLE实现CAN路由的自动化测试
  • 应用层与驱动层通信DeviceIoControl
  • GoYouBBS: 基于Go语言构建的强大论坛系统
  • 渗透测试工程师——第一部分 信息扫描实验系列 001主机存活性探测实验
  • Android布局基础知识:wrap_content,match_parent,layout_weight
  • 树莓派安装MJPG-streamer
  • GALGAME文字提取agth 特殊码大全(特殊码表)和使用方法
  • delphi中使用MSWINSCK.OCX控件
  • 私库如何区分正式和测试环境独立的库