Nginx不接受字节范围

时间:2014-03-29 06:49:17

标签: http nginx http-headers video-streaming html5-video

我正在使用nginx来提供文件系统中的视频。我想启用范围请求。

目前这是我的文件

返回的结果
curl -I fileurl
HTTP/1.1 200 OK
Server: nginx
Date: Sat, 29 Mar 2014 06:41:41 GMT
Content-Type: video/mp4
Content-Length: 15603963
Last-Modified: Sat, 04 Jan 2014 15:02:26 GMT
Connection: keep-alive
Keep-Alive: timeout=300
Accept-Ranges: bytes

但是,如果我发送     curl --header"范围:字节= 0-50" fileurl

下载整个文件。

这是nginx配置中的服务器:

server {
            listen 80;
            server_name myserver;
            error_log logs/myserver.error.log;
            access_log logs/myserver.access.log;

            root /srv/myserver;

            #add_header Accept-Ranges;
            add_header Accept-Ranges bytes;
    }

我还需要启用其他功能吗?我怎么能允许文件的范围请求?

3 个答案:

答案 0 :(得分:2)

我找到了它 - 它的选项

max_ranges

配置底部的max_ranges为0。

答案 1 :(得分:2)

将以下行添加到我的nginx网站配置中后,我能够获得范围请求

    proxy_force_ranges on;

您可以详细了解here

答案 2 :(得分:-1)

.m4v文件的内容类型为video/x-m4v,我不认为video/mp4适用于这些内容。