Flask + nginx + uwsgi:仅在烧瓶没有路由的情况下,才使用nginx来提供url

时间:2018-11-13 21:52:48

标签: python nginx flask uwsgi

服务器的nginx配置(主要的nginx是debian 9的默认配置):

server {
    listen 80;

    server_name subdomain.domain.com;
    include  /etc/nginx/mime.types; 
    location /galleries {
        autoindex on;
        alias /srv/galleries/;
    }
    location / {
        include uwsgi_params;
        uwsgi_pass unix:/tmp/scraper.sock;
    }
}

uwsgi配置:

[uwsgi]
module = wsgi:app

master = true
processes = 5

socket = /tmp/scraper.sock
chmod-socket = 777
uid = www-data
gid = www-data
vacuum = true

die-on-term = true
plugins = python3
py-autoreload = 1

如果我尝试为/ galleries / whatever建立路由,例如:

@app.route("/galleries/whatever")
def test():
    return "Hello"

我将通过nginx看到/ galleries /里面的索引文件,而不是通过flask。

我是否有办法强制Nginx仅在flask返回404时处理请求?或者,是否有更好的方法让我在仍然可以在这些URL下使用文件的同时提供文件?请记住,/ galleries文件夹很大,是由另一个程序生成的。

我使用“ uwsgi --ini server.ini”运行服务器,而没有其他操作。

0 个答案:

没有答案