2017-11-16 7 views
-1

2 개의 다른 도메인에 하나의 VPS 서버에서 2 개의 django 프로젝트를 실행하려고합니다. 내 프로젝트 서버로 gunicorn을 사용하고 있습니다. 사이트에 2 개의 가상 env, 2 개의 감독자 및 2 개의 개별 파일 (사용 가능 및 사용 가능 폴더)을 만들었습니다. 프로젝트가 잘 실행되고 있지만 한 번에 하나의 프로젝트 만 두 도메인에서 실행 중입니다. 비록 내 nginx 사이트에서 avaible 파일은 다른 도메인에 server_name 주어진 여전히 하나의 장고 프로젝트는 도메인 모두를 실행하고있다 아무도 도와 줄 수 있습니다.하나의 VPS 서버 내에 2 개의 django 프로젝트 호스팅

을/etc/nginx를/사이트-avaiable이다

upstream sample_project_server { # fail_timeout=0 means we always retry an upstream even if it failed # to return a good HTTP response (in case the Unicorn master nukes a # single worker for timing out). server unix:/home/vaidroad/test.vaidroad.com/TestEnv/run/gunicorn.sock fail_timeout=0; } server { listen 80; server_name test.vaidroad.com; client_max_body_size 4G; access_log /home/vaidroad/test.vaidroad.com/logs/nginx-access.log; error_log /home/vaidroad/test.vaidroad.com/logs/nginx-error.log; location /static/ { alias /home/ubuntu/static/; } location /media/ { alias /home/ubuntu/media/; } location/{ # an HTTP header important enough to have its own Wikipedia entry: # http://en.wikipedia.org/wiki/X-Forwarded-For proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # enable this if and only if you use HTTPS, this helps Rack # set the proper protocol for doing redirects: # proxy_set_header X-Forwarded-Proto https; # pass the Host: header from the client right along so redirects # can be set properly within the Rack application proxy_set_header Host $http_host; # we don't want nginx trying to do something clever with # redirects, we set the Host: header above already. proxy_redirect off; # set "proxy_buffering off" *only* for Rainbows! when doing # Comet/long-poll stuff. It's also safe to set if you're # using only serving fast clients with Unicorn + nginx. # Otherwise you _want_ nginx to buffer responses to slow # clients, really. # proxy_buffering off; # Try to serve static files from nginx, no point in making an # *application* server like Unicorn/Rainbows! serve static files. if (!-f $request_filename) { proxy_pass http://sample_project_server; break; } } # Error pages error_page 500 502 503 504 /500.html; location = /500.html { root /home/ubuntu/static/; } 

VaidText

}

/을/etc/nginx를/사이트-avaiable이다/SheikhText

upstream sample_project_server { 
    # fail_timeout=0 means we always retry an upstream even if it failed 
    # to return a good HTTP response (in case the Unicorn master nukes a 
    # single worker for timing out). 
    server 

unix:/home/vaidroad/sheikhnoman.vaidroad.com/SheikhEnv/run/gunicorn.sock fail_timeout=0; 
} 

server { 

listen 80; 
server_name sheikhnoman.vaidroad.com; 

client_max_body_size 4G; 
access_log /home/vaidroad/sheikhnoman.vaidroad.com/logs/nginx-access.log; 
error_log /home/vaidroad/sheikhnoman.vaidroad.com/logs/nginx-error.log; 

location /static/ { 
    alias /home/ubuntu/sheikhnoman/static/; 
} 

location /media/ { 
    alias /home/ubuntu/sheikhnoman/media/; 
} 

location/{ 

    # an HTTP header important enough to have its own Wikipedia entry: 
    # http://en.wikipedia.org/wiki/X-Forwarded-For 
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 


    # enable this if and only if you use HTTPS, this helps Rack 
    # set the proper protocol for doing redirects: 
    # proxy_set_header X-Forwarded-Proto https; 

    # pass the Host: header from the client right along so redirects 
    # can be set properly within the Rack application 
    proxy_set_header Host $http_host; 

    # we don't want nginx trying to do something clever with 
    # redirects, we set the Host: header above already. 
    proxy_redirect off; 

    # set "proxy_buffering off" *only* for Rainbows! when doing 
    # Comet/long-poll stuff. It's also safe to set if you're 
    # using only serving fast clients with Unicorn + nginx. 
    # Otherwise you _want_ nginx to buffer responses to slow 
    # clients, really. 
    # proxy_buffering off; 

    # Try to serve static files from nginx, no point in making an 
    # *application* server like Unicorn/Rainbows! serve static files. 
    if (!-f $request_filename) { 
     proxy_pass http://sample_project_server; 
     break; 
    } 
} 

# Error pages 
error_page 500 502 503 504 /500.html; 
location = /500.html { 
    root /home/ubuntu/sheikhnoman/static/; 
} 
} 
+0

최소한 ngnix 설정 파일의 설정을 보여 주어야합니다 ... –

+0

감사합니다. – sheikhsalman08

+0

감사합니다.하지만이 설정은 ngnix 설정 파일 중 하나이며 두 개의 설정 파일이 있다고합니다. –

답변

2

당신이 ngnix 구성 파일에는 동일한 "sample_project_server"upstream name이 들어 있습니다. 각 파일마다 다른 upsteam 이름을 설정하십시오.

+0

와우 대단합니다. 그것은 작동합니다 ............... lottt buddy에게 감사드립니다. – sheikhsalman08