запуск cherrypy с mod_wsgi на apache вместе с другим приложением php. Приложение cherrypy НЕ монтируется с корнем, а скорее с чем-то вроде «localhost/apps/myapp» через WSGIScriptAlias в файле конфигурации apache.
В testapp.py я пробовал следующее, и когда я пытаюсь получить доступ к localhost/apps/myapp в браузере:
app = cherrypy.tree.mount(MyApp(), '', 'settings.config') #FAILS WITH 404
и
app = cherrypy.tree.mount(MyApp(), '/apps/myapp', 'settings.config') # WORKS
Первый случай терпит неудачу, потому что Cherpy ожидает, что он будет в корне сервера, а не относительно того, где он смонтирован через WSGI в apache.
Есть ли предпочтительный способ заставить приложения Cherpy работать относительно пути, который они монтируют в apache под WSGIScriptAlias?
По сути, я буду запускать несколько приложений Cherpy по нескольким разным путям и предпочел бы, чтобы Apache обрабатывал диспетчеризацию (т. Е. Cherrypy просто запускает приложение и не беспокоится об относительном пути). Таким образом, я могу избежать обновления нескольких разных файлов / файлов конфигурации Python каждый раз, когда некоторые относительные пути на сервере меняются.
Какие-либо предложения?
кстати, приложение cherrypy в настоящее время передается в приложение wsgi следующим образом:
app = cherrypy.tree.mount(HelloWorld(), '', 'settings.config')
return app(environ, start_response)