2013-07-17 2 views
2

Ubuntu 10.10을 실행하는 Linode VPS에 Flask 응용 프로그램을 배포하려고합니다. 이 튜토리얼 (https://library.linode.com/web-servers/nginx/python-uwsgi/ubuntu-10.10-maverick#sph_configure-nginx)을 따라했지만 502 잘못된 게이트웨이 오류가 계속 발생했습니다. 여기502 잘못된 게이트웨이 오류 Flask 응용 프로그램을 배포 할 때 Nginx 및 uWSGI

이입니다은/etc/기본/uwsgi : 여기

PYTHONPATH=/var/www/reframeit-im 
MODULE=wsgi 

는 /var/www/reframeit-im/wsgi.py입니다 : 여기

# add the application directory to the python path 
import sys 
sys.path.append("/var/www/reframeit-im") 

# run flask app 
from reframeit import app as application 

이 응용 프로그램의의 nginx 설정 파일입니다 의/사이트 지원 디렉토리에 심볼릭 링크됩니다 (/ 옵션 /의 nginx/conf의/사이트 사용이/reframeit-IM) :

server { 
    listen 80; 
    server_name www.reframeit-im.coshx.com reframeit-im.coshx.com; 
    access_log /var/www/reframeit-im/logs/access.log; 
    error_log /var/www/reframeit-im/logs/error.log; 

    location/{ 
     include uwsgi_params; 
     uwsgi_pass 127.0.0.1:9001; 
    } 
} 

내가 Nginx에 어 체크 응용 프로그램에 대한 로그를 기록한 결과 다음과 같이 나타났습니다.

2013/07/17 19:30:19 [error] 20037#0: *1 upstream prematurely closed connection while reading response header from upstream, client: 70.88.168.82, server: www.reframeit-im.coshx.com, request: "GET /favicon.ico HTTP/1.1", upstream: "uwsgi://127.0.0.1:9001", host: "reframeit-im.coshx.com" 

구성에 문제가 있습니까?

답변

1

uwsgi_pass 127.0.0.1:9001;으로 당신은 Nginx에게 TCP 소켓을 통해 uWSGI와 대화하겠다는 의사를 표명했지만 uWSGI에 경고하지 않았습니다. 당신의 /etc/default/uwsgi 파일에 해당 소켓 줄을 추가

시도 :

PYTHONPATH=/var/www/reframeit-im 
MODULE=wsgi 
socket=127.0.0.1:9001 
+0

'socket' 행을 추가해도 아무 것도하지 않는 것 같습니다. 502 오류 게이트웨이 오류가 발생합니다. –

+0

여전히 '업스트림 조기 폐쇄 연결'오류가 발생합니까? 또는 다른 것? – flaviodesousa

+0

플라 비오에게 고마워,이 일은 나를 위해 일했다. –

0

추가하십시오 "프로토콜 = uwsgi"떨어져 플라 비오 제안했다 것과. 다음과 같이

PYTHONPATH=/var/www/reframeit-im 
MODULE=wsgi 
socket=127.0.0.1:9001 
protocol = uwsgi 
관련 문제