Монтирование нескольких приложений с помощью CherryPy и gunicorn - PullRequest
0 голосов
/ 01 октября 2018

Моя папка выглядит следующим образом:

Root
   - App1
      - handlers.py
   - App2
      - handlers.py
   - wsgi.py

Я хочу использовать Cherrypy для монтирования приложений по соответствующим URL-адресам: server.com/app1, server.com/app2 и создать точку входа WSGI дляGunicorn.

wsgi.py:

import cherrypy
from App1.handlers import App1 as App1Handler
from App2.handlers import App2 as App2Handler

application = cherrypy.tree.mount(App2Handler(), '/app2', {})
cherrypy.tree.mount(App1Handler(), '/app1', {})

cherrypy.config.update({'engine.autoreload.on': False})
cherrypy.config.update({'environment': 'embedded'})
cherrypy.server.unsubscribe()
cherrypy.engine.start()

Я могу добраться до app2, но при попытке доступа к app1 отображается «путь не найден».Как мне смонтировать оба приложения в качестве точки входа WSGI?В учебниках Cherrypy не показано, как объединить внешний сервер WSGI с монтированием нескольких приложений.

1 Ответ

0 голосов
/ 13 октября 2018

Попробуйте это изменение в вашем wsgi.py:

cherrypy.tree.mount(App1Handler(), '/app1', {})
cherrypy.tree.mount(App2Handler(), '/app2', {})
application = cherrypy.tree

Затем запустите что-то вроде:

gunicorn wsgi:application
...