nginx配置文件主要分为六个区域:main section、events section、http section、sever section、location section、upstream section。

以下为Nginx的主要配置

#main module配置

use nobody;  #设置运行用户

worker_processes 1;    #设置启动进程,通常设置成cpu数量相当

error_log  logs/error.log;  #全局错误日志定义类型,[ debug | info | notice | warn | error | crit ]

pid  logs/nginx.pid;    #进程文件

#event module配置

events{

  use   epoll;        #epoll是多路复用IO(I/O Multiplexing)中的一种方式,但是仅用于Linux2.6以上内核,可以大大提高nginx的性能

  worker_connections 1024   #单个worker process进程最大并发连接数

}

#http module配置

http{

include  mine.types;     #设置mime类型

default_type  application/octet-stream;

access_log  logs/access.log;   #设置访问日志

sendfile on;    #表示调用sendfile函数输出文件,对于普通应用必须设置为on,若用来进行下载等高IO负荷的应用则设置为off,

平衡以平衡磁盘与网络I/O处理速度,降低系统的uptime.

Keepalive_timeout 65;  #设置连接超时65s

gzip on;    #开启gzip压缩输出

gzip_types      text/plain application/x-javascript text/css application/xml;  #压缩类型,默认包含text/html

  #server module配置

#做为服务器时虚拟主机相关配置

Server{

listen  80;    #监听端口

server_name www.xxx.com;  #主机名

access_log logs/xxx.com.access.log;  #此虚拟主机访问日志

#设置默认请求

location ~ {

root  /wwwroot;  #定义站点根目录地址

index  index.php  index index.aspx  index.html  #站点默认文档名

}

#定义错误提示页面

error_page  400  /400.html;

error_page  500 502 503  /50x.html;

}

#做为反向代理服务器时,且实现负载均衡配置

#负载均衡配置,其中weight是权重,至越大,被分配的几率越大

#upstream module配置

upstream backserver {

#说明:若配置为以下方式,一定要保证网站可以通过IP地址方式能正常访问,如 http://192.168.1.10/

server 192.168.1.10:80 weight=1;

server 192.168.1.11:80 weight=2;

server 192.168.1.12:80 weight=2;

}

#代理服务器配置

Server{

listen  80;    #监听端口

  server_name www.xxx.com;  #主机名

  access_log logs/xxx.com.access.log;  #此虚拟主机访问日志

  #设置默认请求

  location ~ {

      proxy_pass        backserver http://backserver;
               
       proxy_set_header   Host      
      $host;
               
       proxy_set_header   X-Real-IP    
   $remote_addr;
               
       proxy_set_header   X-Forwarded-For
 $proxy_add_x_forwarded_for;

}

}

在浏览器中访问www.xxx.com时,Nginx会根据upstream中的服务列表进行再次请求,并将最终的数据返回给浏览器。

Nginx反向代理及简单负载均衡配置的更多相关文章

  1. Nginx反向代理实现Tomcat负载均衡

    这篇短文主要介绍Tomcat的集群和用Nginx反向代理实现Tomcat负载均衡. 1.首先需要对一些知识点进行扫盲(对自己进行扫盲,囧): 集群(Cluster) 简单来说就是用N台服务器构成一个松 ...

  2. Nginx反向代理 实现Web负载均衡

    实现负载均衡的方式有很多种,DNS.反向代理.LVS负载均衡器(软件实现).F5(负载均衡器,硬件,非常昂贵)这里我们只提到基于DNS,以及反向代理的方式来实现负载均衡Web服务       DNS服 ...

  3. nginx 反向代理 和lvs负载均衡

    nginx反向代理:用户请求nginx代理服务器然后代理服务器将用户请求转为服务器再由nginx代理服务器将服务器的响应反应给用户. lvs负载均衡:用户请求nginx代理服务器然后代理服务器将用户请 ...

  4. nginx的安装及简单负载均衡配置

    Nginx 是一个很强大的高性能Web和反向代理服务器,它具有很多非常优越的特性.本人目前所在公司也使用nginx,主要用来做负载均衡服务器.同时也可以作为邮件代理服务器. 1. nginx的安装.本 ...

  5. nginx作反向代理,实现负载均衡

    nginx作反向代理,实现负载均衡按正常的方法安装好 ngixn,方法可参考http://www.cnblogs.com/lin3615/p/4376224.html其中作了反向代理的服务器的配置如下 ...

  6. Nginx+Tomcat多实例及负载均衡配置

    Nginx+Tomcat多实例及负载均衡配置 采用nginx的反向代理负载均衡功能,配合后端的tomcat多实例来实现tomcat WEB服务的负载均衡 01 安装nginx服务 安装所需的pcre库 ...

  7. Nginx + Tomcat Windows下的负载均衡配置

     Nginx + Tomcat Windows下的负载均衡配置 一.为什么需要对Tomcat服务器做负载均衡?    Tomcat服务器作为一个Web服务器,其并发数在300-500之间,如果超过50 ...

  8. nginx 反向代理 与 Apache backend的配置联合配置

    nginx 反向代理 与 Apache backend的配置联合配置: 说明: nginx 将http映射到Apache上的特定子目录. 配置方法步骤: 1.  设置域名, 子域名映射到指定服务器ip ...

  9. Nginx 反向代理工作原理简介与配置详解

    Nginx反向代理工作原理简介与配置详解   by:授客  QQ:1033553122   测试环境 CentOS 6.5-x86_64 nginx-1.10.0 下载地址:http://nginx. ...

随机推荐

  1. SQL - 循环

    declare @itemnumber int --定义需要循环的次数 declare @tagint int --定义标志字段,用于结束循环 select @itemnumber = count(d ...

  2. thinkphp 分页Pages

    位置: Thinkphp/Library/Think/Pages 或Page pages.class.php <?php // +-------------------------------- ...

  3. [android] 新闻客户端实现左侧导航点击切换

    设置主布局文件,为根布局设置一个id,作为内容区 给ListView的条目设置点击事件,setOnItemClickListener()方法,参数:上下文 当前的Fragment实现OnItemCli ...

  4. Windows Server 2008R2常见的500错误

    每次公司服务器装系统后再去部署服务,都会碰到这个问题,这里记录一下问题的解决方法 遇到“500 – 内部服务器错误. 您查找的资源存在问题,因而无法显示.”的问题. 解决办法: 1.解决方法:打开II ...

  5. c++类内存分布解析

    首先使用Visual Studio工具查看类的内存分布,如下: 先选择左侧的C/C++->命令行,然后在其他选项这里写上/d1 reportAllClassLayout,它可以看到所有相关类的内 ...

  6. JSP学习笔记(7)-JSP的文件操作

    1.File类 File对象用来获取文件本身的一些信息,例如文件所在目录,文件的长度,文件读写权限等,不涉及文件的读写操作. 创建一个File对象的构造方法有3个: File(String filen ...

  7. MVC Helper Methods

    在.net MVC中经常会见到特别的写法 比如 @Url.Action( ) @Url.Conyent( ) @Html.Displayfor( )等等 这些 写法就是我们这里要讲的  Helper ...

  8. HDU4565(SummerTrainingDay05-C 矩阵快速幂)

    So Easy! Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  9. 转载文章CSS3的calc()使用

    calc()对大家来说,或许很陌生,不太会相信calc()是css中的部分.因为看其外表像个函数,既然是函数为何又出现在CSS中呢?这一点也让我百思不得其解,今天有一同事告诉我,说CSS3中有一个属性 ...

  10. grafana启用mysql作为的后台数据库

    vim grafana-5.4.2/conf/defaults.ini grafana默认使用sqlite3使用后台数据库,可选用mysql,postgres,sqlite3. 重新启动 注意: gr ...