加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 运营中心 > Nginx > 正文

nginx-Flask send_from_directory用于媒体文件

发布时间:2020-12-13 20:53:11 所属栏目:Nginx 来源:网络整理
导读:嗨,我有一个小型的Flask应用程序,目的是家庭网络使用. 目前,我让Flask与uWSGI和nginx一起运行. 该应用程序基本上会扫描位置并提供媒体文件.以下是呈现这些文件的代码: @app.route('/get_media/path:filename',methods=['GET']) def get_media(filename): re

嗨,我有一个小型的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和flask为它们提供服务,这会产生太多开销.

#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;
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读