Skip to main content
 首页 » 编程设计

python之同时运行 Django 和 Flask

2024年08月25日27dyllove98

我想同时运行 Django 和 Flask。 Django 应用程序将在“hello.com”上运行,而 Flask 应用程序将在“hello.com/flaskapp”上运行。我该怎么做?

请您参考如下方法:

如果您不需要 flask 中的 django-y 内容或 django 中的 flask-y 内容(即它们是完全独立的应用程序),那么这只是设置您的 Web 服务器以代理请求到 /flaskapp 到运行 Flask 的进程,/ 下的所有其他内容到运行 Django 的进程。

请记住,我从来没有在生产环境中这样做过,也从来没有专门将 Django 和 Flask 并排使用过,但经常使用 NodeJS 开发服务器和代理所有请求的 Django(或 Flask)后端 API 来完成/api/ 到我运行 Django 开发服务器的本地主机上的任何端口。

nginx 的示例配置来完成此操作:

upstream django { 
    # your usual django config using e.g. uwsgi or gunicorn 
} 
 
upstream flask { 
    # your usual flask config 
} 
 
server { 
    location / { 
        proxy_pass http://django; 
    } 
 
    location /flaskapp { 
        proxy_pass http://flask; 
    } 
} 

@davidism 在关于让 Flask 知道它不“拥有”站点根目录的评论中提出了一个很好的观点。将 script_root 设置为 /flaskapp 应该可以解决问题(参见 relevant Flask docs )。