单服务多端口-Nginx 配置备忘

nginx.conf

user  nginx;
worker_processes  1;

error_log  /var/log/nginx/error.log warn;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
}

http {
    include       /etc/nginx/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  /var/log/nginx/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    keepalive_timeout  65;

    #gzip  on;

    include vhosts/*.conf;

    include upstream/*.conf;
}

vhosts/example.conf

server {
    listen 8089;
    server_name localhost;

    location / {
        access_log  /var/log/nginx/bear.nginx.log;
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Scheme $scheme;
        proxy_pass http://example;
    }

    location ~ \.(gif|jpg|png)$ {
        root   /usr/local/src/static/;
        autoindex on;
    }
}

upstream/example.conf

upstream example {
    server 127.0.0.1:8090 max_fails=2 fail_timeout=30s weight=10;
    server 127.0.0.1:8091 max_fails=2 fail_timeout=30s weight=10;

    keepalive 32;
}