Nginx order of servers

Posted by scrat on Server Fault See other posts from Server Fault or by scrat
Published on 2012-11-04T16:39:38Z Indexed on 2012/11/04 17:03 UTC
Read the original article Hit count: 254

Filed under:
|

I have 3 sites on my server. All are running on gunicorn and use unix sockets to communicate with nginx which routes requests. I got three records in nginx.conf like:

server {
    listen 80;
    server_name site1.com;
    location / {
                proxy_pass http://unix:/tmp/site1.sock;
                proxy_redirect off;
                proxy_set_header   Host             $host;
                proxy_set_header   X-Real-IP        $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

For site1, site2, site3. If they are ordered as config for site1 goes first, and then goes config for site2 and site3 everything works good. But when I change the order for example to site2, site1, site3, then site1 becomes routed to site2.

What am I doing wrong?

Full server nginx.conf before servers configs:

user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
    worker_connections 768;
    # multi_accept on;
}

http {

##
# Basic Settings
##

    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;

    include /etc/nginx/mime.types;
    default_type application/octet-stream;

##
# Logging Settings
##

    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;

##
# Gzip Settings
##


gzip on;
gzip_types text/css application/x-javascript text/x-component text/richtext image/svg+xml text/plain text/xsd text/xsl text/xml image/x-icon;

© Server Fault or respective owner

Related posts about nginx

Related posts about gunicorn