nginx反向代理与负载均衡配置模板

nginx.conf配置模板

#user  nobody;#指定运行的用户,Linux最好不要使用root用户启动,window环境不需要配置
#error_log  logs/error.log;#默认日志输入路径,可以更改
#error_log  /dev/null crit;#禁用error_log日志方法
#error_log  logs/error.log  notice;#指定输出日志级别,可以使用默认级别
#error_log  logs/error.log  info;

#Linux环境核心转储文件大小,win没有该配置
#worker_rlimit_core 1000m;
#Linux核心转储文件位置
# working_directory /usr/local/nginx/logs;

#pid        logs/nginx.pid;

#定义环境变量(Linux配置)
#env TESTPATH=/tmp/;

#绑定内核
# worker_processes 4;
# worker_cpu_affinity 1000 0100 0010 0001;

#使用epoll机制,Linux配置
# events {
#     use epoll;
#     worker_connections  1024;
# }


http {
    include       mime.types;
    default_type  application/octet-stream;

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;
    #access_log off;#禁止访问日志
    #使用启动高效传输文件的模式,直接在磁盘和tcp socket之间传输数据,绕开buffer,Linux配置。
    sendfile        on; 
    #启用不等待模式,配合sendfile一起用,Linux配置
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    #配置负载均衡
    # upstream www.eakom.com { 
    #   ip_hash
    #   server  10.10.11.150:8888 weight=2; 
    #转发失败3次,30S内不可用
    #   server  10.10.11.150:8080 weight=5 max_fails=3 fail_timeout=30s; 
    #   server  10.10.12.28:8888 backup; #备用服务器

    # } 

    server {
        listen       808;
        server_name  localhost;

        #charset koi8-r;
        #启用Linux上的sendfile系统调用来发送文件,它减少了内核态与用户态之间的两次内存复制,
        #这样就会从磁盘中读取文件后直接在内核态发送到网卡设备,提高了发送文件的效率(小文件)
        sendfile on;
        #大文件
        aio off;

        #access_log  logs/host.access.log  main;
        location =/{
            #配置负载均衡
            #指定反向代理为上面配置的那个upstream节点“www.eakom.com”
            proxy_pass http://www.eakom.com;
            proxy_set_header  Host             $host:$server_port;
            proxy_set_header  X-Real-IP        $remote_addr; 
            proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_404;
            # #链接超过一秒马上链接另一个链接 ,如果一台tomcat崩溃,该配置就很重要
            proxy_connect_timeout 30;
            # 如过加载的是数据量较大的报表,页面会很慢,参数需要设置大一点(很重要)
            proxy_read_timeout 60;
            proxy_send_timeout 60;
            proxy_buffer_size 256k;
            proxy_buffers 4 256k;
            proxy_busy_buffers_size 256k;
            proxy_temp_file_write_size 256k;
            proxy_max_temp_file_size 128m;
            client_max_body_size 50m;
            client_body_buffer_size 256k;
            root   html;
            index  index.html index.htm;
        }
        #指向固定文件夹 D:/software/Project/hh/views
        location =/views{
            root D:/software/Project/hh;
            autoindex on;#张开目录
        }
        #指向D:/file/个人/图片/路径
        location /down/ {
            #响应长度超过1M后限速
            limit_rate_after 1m;
            if ($slow) {
                #对请求的限速 默认为0 不限速
                set $limit_rate 4k;
            }
            limit_rate $limit_rate;
            alias D:/file/个人/图片/;
        }
        location /upload/ {
            #HTTP请求包体的最大值
            client_max_body_size 1m;
            proxy_pass http://backend;
        }
        location ~ ^/download/(.*)$ { #正则表达式并传参
            alias D:/file/个人/图片/$1;#路径别名
        }

        location /{
            root   html;
            index  index.html index.htm;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            #inernal;#内部访问
            root   html;
        }
        # 静态资源获取(~*不区分大小写  ~为区分大小写)
        location ~* \.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|ttf)$ {  
            root D:/software/MyEclipse-2014/Project/tjhy;  
        }


        #错误重定向到另外一个location
        location / (
            error_page 404 @fallback;
        )
        location @fallback (
            proxy_pass http://backend;
        )
    }


    # another virtual host using mix of IP-, name-, and port-based configuration
    #
    #server {
    #    listen       8000;
    #    listen       somename:8080;
    #    server_name  somename  alias  another.alias;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}


    # HTTPS server
    #
    #server {
    #    listen       443 ssl;
    #    server_name  localhost;

    #    ssl_certificate      cert.pem;
    #    ssl_certificate_key  cert.key;

    #    ssl_session_cache    shared:SSL:1m;
    #    ssl_session_timeout  5m;

    #    ssl_ciphers  HIGH:!aNULL:!MD5;
    #    ssl_prefer_server_ciphers  on;

    #    location / {
    #        root   html;
    #        index  index.html index.htm;
    #    }
    #}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值