[pyar] WSGI para Flask en Windows

Luis Andraschnik luis.andraschnik en gmail.com
Mar Abr 3 13:34:32 -03 2018


Actualización de último momento: La falla ocurre aunque no haga nada
prohibido

$ python launcher_cherry.py
[03/Apr/2018:13:30:30] ENGINE Bus STARTING
[03/Apr/2018:13:30:30] ENGINE Started monitor thread 'Autoreloader'.
[03/Apr/2018:13:30:30] ENGINE Started monitor thread '_TimeoutMonitor'.
[03/Apr/2018:13:30:30] ENGINE Serving on http://0.0.0.0:5000
[03/Apr/2018:13:30:30] ENGINE Bus STARTED
127.0.0.1 - - [03/Apr/2018:13:30:33 -0300] "GET / HTTP/1.1" 200 2660 "
http://localhost:5000/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0)
Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:33 -0300] "GET /static/basic.css HTTP/1.1"
200 410 "http://localhost:5000/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64;
rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:33 -0300] "GET /static/navbar.css
HTTP/1.1" 200 566 "http://localhost:5000/" "Mozilla/5.0 (Windows NT 10.0;
Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:34 -0300] "GET /static/fondo.jpg HTTP/1.1"
304 - "http://localhost:5000/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64;
rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:35 -0300] "GET /gasoil HTTP/1.1" 200 11507
"http://localhost:5000/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64;
rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:35 -0300] "GET /static/basic.css HTTP/1.1"
200 410 "http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT 10.0;
Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:35 -0300] "GET /static/navbar.css
HTTP/1.1" 200 566 "http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT
10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:37 -0300] "POST /gasoil HTTP/1.1" 200
315115 "http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:40 -0300] "GET /static/basic.css HTTP/1.1"
200 410 "http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT 10.0;
Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:40 -0300] "GET /static/navbar.css
HTTP/1.1" 200 566 "http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT
10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:51 -0300] "GET /fueloil HTTP/1.1" 200 4809
"http://localhost:5000/gasoil" "Mozilla/5.0 (Windows NT 10.0; Win64; x64;
rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:53 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:53 -0300] "GET /static/basic.css HTTP/1.1"
200 410 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0;
Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:53 -0300] "GET /static/navbar.css
HTTP/1.1" 200 566 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT
10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:54 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:55 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:56 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:56 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"
127.0.0.1 - - [03/Apr/2018:13:30:57 -0300] "POST /fueloil HTTP/1.1" 200
6252 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
x64; rv:59.0) Gecko/20100101 Firefox/59.0"

*Tcl_AsyncDelete: async handler deleted by the wrong thread*


El 3 de abril de 2018, 13:27, Luis Andraschnik <luis.andraschnik en gmail.com>
escribió:

> Hola Ricardo
>
> Ya encargué una Rpi para este uso, mientras tanto quería ver que puedo
> hacer en Windows. Probé usar el WSGI de Cherrypy, que vuela, pero si
> introduzco datos que generen una operación prohibida, como logaritmos de
> números negativos (mi app no está muy pulida), genero un Server internal
> error que no puede recuperarse. Bajo linux con Gunicorn se la bancaba, así
> que no sé que tan estable sea Cherrypy wsgi server en Windows:
>
> *ValueError: math domain error*
> 127.0.0.1 - - [03/Apr/2018:13:14:45 -0300] "POST /fueloil HTTP/1.1" 500
> 291 "http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64;
> x64; rv:59.0) Gecko/20100101 Firefox/59.0"
> 127.0.0.1 - - [03/Apr/2018:13:14:48 -0300] "GET / HTTP/1.1" 200 2660 "
> http://localhost:5000/fueloil" "Mozilla/5.0 (Windows NT 10.0; Win64; x64;
> rv:59.0)
>
>
> *Tcl_AsyncDelete: async handler deleted by the wrong thread*
>
>
> Usé el siguiente script como lanzador (basado en
> http://fgimian.github.io/blog/2012/12/08/setting-up-a-rock-
> solid-python-development-web-server/ )
>
> import cherrypy
>
> from *my_aplicacion_flask* import app
> from paste.translogger import TransLogger
>
>
> def run_server():
>     # Enable WSGI access logging via Paste
>     app_logged = TransLogger(app)
>
>     # Mount the WSGI callable object (app) on the root directory
>     cherrypy.tree.graft(app_logged, '/')
>
>     # Set the configuration of the web server
>     cherrypy.config.update({
>         'engine.autoreload_on': True,
>         'log.screen': True,
>         'server.socket_port': 5000,
>         'server.socket_host': '0.0.0.0'
>     })
>
>     # Start the CherryPy WSGI web server
>     cherrypy.engine.start()
>     cherrypy.engine.block()
>
> if __name__ == "__main__":
>     run_server()
>
>
>
> El 3 de abril de 2018, 13:00, Ricardo Daniel Quiroga <
> l2radamanthys en gmail.com> escribió:
>
>> Lo que te recomiendo es no hacer deploy sobre windows vas a sufrir y
>> mucho, de ultima consigue una raspberry y que corra ahi. Pero bueno
>> si sos masoquista [1]
>>
>> [1]- https://medium.com/@bilalbayasut/deploying-python-web-app-
>> flask-in-windows-server-iis-using-fastcgi-6c1873ae0ad8
>>
>> El 3 de abril de 2018, 12:52, pedro cabrera <pedrom9632 en gmail.com>
>> escribió:
>>
>>> Buenos dias
>>>
>>>
>>> Te recomiendo Nginx, espero que te sirva para lo que necesitas
>>>
>>> El 3 de abril de 2018, 10:46, Luis Andraschnik <
>>> luis.andraschnik en gmail.com> escribió:
>>>
>>>> Buen día Grupo
>>>>
>>>> Quise correr una aplicación flask en Windows con Gunicorn y me enteré
>>>> que no funciona (ni en Cygwin). ¿Qué puedo usar como Python WSGI?
>>>>
>>>> Es para correr una app Flask en una red Local, en Windows, algo que sea
>>>> tan sencillo de implementar como Gunicorn y para no usar el servidor de
>>>> desarrollo que es muy precario para "producción".
>>>>
>>>> Muchas gracias!
>>>> Luis
>>>>
>>>>
>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail> Libre
>>>> de virus. www.avast.com
>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>>> <#m_1848759174362256851_m_-1683613568499855731_m_5998710374036844608_m_7228297523808588929_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>>>>
>>>> _______________________________________________
>>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>>> Sitio web: http://www.python.org.ar/
>>>>
>>>> Para administrar la lista (o desuscribirse) entrar a
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>>
>>> _______________________________________________
>>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>>> Sitio web: http://www.python.org.ar/
>>>
>>> Para administrar la lista (o desuscribirse) entrar a
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>>
>> --
>>
>> Ricardo Daniel Quiroga
>>
>>
>> _______________________________________________
>> Lista de Correo de PyAr - Python Argentina - pyar en python.org.ar
>> Sitio web: http://www.python.org.ar/
>>
>> Para administrar la lista (o desuscribirse) entrar a
>> http://listas.python.org.ar/listinfo/pyar
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20180403/45e6f61a/attachment.html>


Más información sobre la lista de distribución pyar