我有一个用于家庭网络的小型 Flask 应用程序。
目前我让 Flask 与 uWSGI 和 nginx 一起运行。
该应用程序基本上会扫描一个位置并提供媒体文件。下面是渲染这些文件的代码:
@app.route('/get_media/<path:filename>', methods=['GET'])
def get_media(filename):
return send_from_directory('/media/', filename)
send_from_directory工作正常,但似乎很慢。我必须承认我并不真正了解它背后的过程。是 python 提供这些文件还是 nginx?我希望 nginx 能够为这些文件提供服务,但我不确定如何配置别名,因为我希望应用程序遍历文件的目录,但希望将服务移交给 nginx。
请您参考如下方法:
如果你已经使用nginx的你应该成为使用nginx的媒体和静态文件,没有理由与uWSGI和瓶为他们服务,开销太大。
#in case you have structure /path/to/your/media_dir/media
location /media {
root /path/to/your/media_dir;
}
#in case you have structure /path/to/your/media_dir
location /media {
alias /path/to/your/media_dir;
}


