2013-08-13 4 views
5

Я хотел бы разместить 2 разных приложения-узла с nginx из того же домена, и у меня есть некоторые проблемы. Я хотел бы иметь:Обслуживание приложений с несколькими узлами с nginx в одном домене

mydomain.com точки к узлу App firstApp и otherapp.mydomain.com точки к узлу App otherapp

Прямо сейчас, я могу получить доступ к firstApp просто отлично, но я не могу получить otherapp через otherapp.mydomain.com.

Мой конфиг для firstApp выглядит следующим образом:

upstream firstApp{ 
    server 127.0.0.1:8123; 
} 

server{ 
    server_name mydomain.com; 
    access_log /var/log/nginx/me.log; 

    location/{ 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 

     proxy_pass http://firstApp/; 
     proxy_redirect off; 
    } 
} 

Мой конфиг для otherapp выглядит следующим образом:

upstream otherapp{ 
    server 127.0.0.1:8124; 
} 

server{ 
    server_name otherapp.mydomain.com; 
    access_log /var/log/nginx/me.log; 

    location/{ 
     proxy_set_header X-Real-IP $remote_addr; 
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
     proxy_set_header Host $http_host; 
     proxy_set_header X-NginX-Proxy true; 

     proxy_pass http://otherapp/; 
     proxy_redirect off; 
    } 
} 

Я создал обе конфигурации в Nginx сайты доступного каталога , они оба связаны в каталоге с поддержкой сайтов, и я перезапустил nginx. Может ли кто-нибудь сказать мне, что я делаю неправильно?

Спасибо, Swaraj

ответ

4

Только что узнал, что проблема была. Хотя мои конфиги nginx были правильными, я не добавил желаемый субдомен моему провайдеру имен доменов (namecheap). Я добавил свой поддомен на namecheap, и теперь все работает правильно.

3

вы должны конфиг файл Nginx как этот

server { 
     listen 80; 
     server_name biger.yourdomain.cn; 


     access_log  /data/log/nginx/access_ab.log; 
     error_log  /data/log/nginx/error_ab.log; 

     location /firstApp { 
      proxy_store off; 
      proxy_redirect off; 
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
      proxy_set_header X-Real-IP $remote_addr; 
      proxy_set_header Host $http_host; 
      proxy_pass http://localhost:8001/; 
     } 

} 

maeby вам нужно добавить этот код в ваш проект

app.enable ('доверие прокси');