instead digitalocean deploy app regex nginx uwsgi bottle

regex - digitalocean - Nginx-Reescribe el request_uri antes de uwsgi_pass



use a production wsgi server instead (2)

Acabo de encontrar el mismo problema, y ​​aquí hay una solución.

location /one { include uwsgi_params; uwsgi_pass unix:///.../one.sock; uwsgi_param SCRIPT_NAME /one; uwsgi_modifier1 30; }

Puede encontrar más información sobre uwsgi_modifier1 aquí: http://uwsgi-docs.readthedocs.org/en/latest/Nginx.html#hosting-multiple-apps-in-the-same-process-aka-managing-script-name-and-path-info

Tengo un Nginx vhost que está configurado como tal:

... location /one { include uwsgi_params; uwsgi_pass unix:///.../one.sock; } location /two { include uwsgi_params; uwsgi_pass unix:///.../two.sock } ...

Esta es una configuración simplificada por supuesto

Cuando solicito /one/something me gustaría que mi script de Python reciba /something como request_uri .

Estoy usando BottlePy pero me gustaría que Nginx lo maneje y no en mi código Python.

¿Puedo hacer algo como uwsgi_param REQUEST_URI replace($request_uri, ''^/one'', '''') ?

Editar

Aquí está la solicitud de mi código Python: [pid: 30052 | app: 0 | req: 1/1] () {42 vars in 844 bytes} [Tue Aug 21 14:22:07 2012] GET / one / something = > genera 0 bytes en 4 msegs (HTTP / 1.1 200) 2 encabezados en 85 bytes (0 cambia en el núcleo 0)

Así que Python está bien, pero uWSGI no lo está.

¿Cómo arreglar eso?


location /one { rewrite /one/(.+) /$1 break; include uwsgi_params; uwsgi_pass unix:///.../one.sock; }