corriendo cherrypy con mod_wsgi en apache junto con otra aplicación php. La aplicación cherrypy NO está montada en la raíz, sino en algo como 'localhost/apps/myapp' a través de WSGIScriptAlias en el archivo de configuración de apache.guindaleza y ruta relativa en la aplicación WSGI
En testapp.py, me han tratado los siguientes, y cuando intento acceder a localhost/aplicaciones/miaplicacion en un navegador:
app = cherrypy.tree.mount(MyApp(), '', 'settings.config') #FAILS WITH 404
y
app = cherrypy.tree.mount(MyApp(), '/apps/myapp', 'settings.config') # WORKS
El primer caso falla porque cherrypy espera estar en la raíz del servidor, en lugar de en relación a dónde está montado a través de WSGI en apache.
¿Existe alguna forma preferida de hacer que las aplicaciones de cherrypy funcionen en relación con la ruta en la que están montadas en apache bajo WSGIScriptAlias?
Básicamente, voy a ejecutar varias aplicaciones cerebritos bajo varias rutas diferentes, y preferiría que apache manejara el despacho (es decir, cherrypy solo ejecuta la aplicación y no se preocupa por la ruta relativa). De esta forma puedo evitar actualizar varios archivos/archivos de configuración python cada vez que cambian algunas de las rutas relativas en el servidor.
¿Alguna sugerencia?
por cierto, la aplicación cherrypy Actualmente, se transmite a la aplicación WSGI de la siguiente manera:
app = cherrypy.tree.mount(HelloWorld(), '', 'settings.config')
return app(environ, start_response)