<div dir="ltr"><div><div><div>Hi everybody,<br><br></div>   I'm having a problem with my nginx and uwsgi. I don't really know what I'm doing wrong. <br><br></div>Here is the configuration of nginx:<br><br>server {<br>        listen                  80;<br><br>        location /api/v1 {<br>                uwsgi_pass      unix:///tmp/api.sock;<br>                include         uwsgi_params;<br>        }<br><br>        location / {<br>                return 444;<br>        }<br><br></div>And this is uwsgi configuration:<br><br>[uwsgi]<br>socket = /tmp/api.sock<br>chdir = /var/www/api<br>master = true<br>plugin = python<br>pp = /home/api/src<br>file = uwsgi.py<br>uid = www-data<br>gid = www-data<br>threads = 4<br>workers = 4<br>callable = app<br>chmod-socket = 666<br>post-buffering = 4096<br>virtualenv = /usr/local/venvs/api<br>callable = ins<br>env = API_SETTINGS_FILE=../../etc/settings.py<br clear="all"><div><div><div><div><br></div><div>If I execute following command everything seems to be working fine:<br><br>curl -v <a href="http://127.0.0.1/api/v1/login">http://127.0.0.1/api/v1/login</a><br><br>{<br>    "message": "Method Not Allowed",<br>    "status": 405<br>}<br><br></div><div>HTTP/405 it's the expected answer since the app doesn't allow login resquets with GET method, So now I'm going to try with POST.<br><br></div><div>The application expects for data such as email and password, so this should trigger a 500 in the api backend<br></div><div><br>curl <a href="http://10.10.10.35/api/v1/login">http://10.10.10.35/api/v1/login</a> -X POST<br><br></div><div>uwsgi log:<br><br>[pid: 19484|app: 0|req: 5/5] 127.0.0.1 () {30 vars in 340 bytes} [Fri Jul 17 12:05:00 2015] POST /api/v1/login => generated 0 bytes in 432 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0)<br></div><div><br></div><div>Everything good but the answer of nginx it's wrong:<br><br><html><br><head><title>502 Bad Gateway</title></head><br><body bgcolor="white"><br><center><h1>502 Bad Gateway</h1></center><br><hr><center>nginx/1.7.1</center><br></body><br></html><br><br></div><div>So for any reason nginx interpret the HTTP/500 from the API as the gateway it's no available. <br><br></div><div>Do you see what I'm doing wrong?<br><br><br></div><div>More info: <br><br></div><div>Nginx 1.8.0<br></div><div>Ubuntu 12.04<br>uWSGI 1.0.3<br><br></div><div>Thanks in advance<span class=""></span></div><div>-- <br><div class="gmail_signature"><div dir="ltr">-- Guido Accardo --<div><div style="font-family:arial;font-size:small">"... What we know is a drop, what we ignore is the ocean ..." Isaac Newton</div></div></div></div>
</div></div></div></div></div>