小编jbl*_*bll的帖子

除了“/”之外的 Python Flask 路由使用带有 nginx 和 uwsgi 的 virtualenv 给出 404s

我有一个简单的 Flask 应用程序,我试图在 nginx 和 uwsgi 后面运行它。当我使用 Flask 的开发服务器运行应用程序时,一切都按预期工作。我将浏览器指向 localhost:5000 和 localhost:5000/hello 并看到“嗨!” 和“你好!”,分别。

但是当我尝试使用 uwsgi 和 nginx 运行应用程序时,我可以看到“/”处的路由就好了,即,我看到“嗨!” 在本地主机上:8181。但是我在 localhost:8181/hello 处收到“/hello”路由的 404 Not Found。对于我尝试添加到应用程序的任何路径,我都会收到 404,而不仅仅是“/”。

我的应用程序的文件夹结构如下所示:

my_app/
    app/
        __init__.py
    venv/
    app.py
    uwsgi.xml
Run Code Online (Sandbox Code Playgroud)

哪里__init__.py简单:

import os
import sys
from flask import Flask, render_template

app = Flask(__name__)

@app.route('/hello')
def hello():
    return 'Hello!'

@app.route('/')
def hi():
    return 'Hi!'
Run Code Online (Sandbox Code Playgroud)

app.py 是:

from app import app
from flask import Flask

if __name__ == '__main__':
    app.run(host='0.0.0.0')
Run Code Online (Sandbox Code Playgroud)

uwsgi.xml:

<uwsgi>
    <plugin>python27</plugin>
    <socket>127.0.0.1:4141</socket>
    <master/>
    <processes>4</processes>
    <harakiri>60</harakiri> …
Run Code Online (Sandbox Code Playgroud)

python nginx virtualenv flask uwsgi

5
推荐指数
0
解决办法
823
查看次数

标签 统计

flask ×1

nginx ×1

python ×1

uwsgi ×1

virtualenv ×1