X accel重定向未下载文件

时间:2019-10-31 07:42:12

标签: django nginx x-accel-redirect

我正在尝试添加身份验证,以仅允许有效用户从nginx下载静态文件。

这是我的Nginx配置:

location ^~ /download-logs {
    internal;
    alias media/logs;
}

在Django中,我添加了一条处理响应的路由:

url   :  url(r'^media/', views.protectedMedia, name="protect_media"),
views : 
def protectedMedia(request):
    response = HttpResponse(status=200)
    response['Content-Type'] = ''
    response['X-Accel-Redirect'] = '/download-logs/log.txt'
    return response

当我尝试从响应中转到路线http://my_ip_address/media/时,我可以看到X加速重定向字段,但是文件没有下载

enter image description here

1 个答案:

答案 0 :(得分:2)

此问题已解决,基本上我忘了在nginx配置中传递uwsgi服务器的代理...

location /api {
    proxy_pass http://127.0.0.1:8000/api;
}

希望这会有所帮助。