Proxy_store downloading half videos !!

shahzaib shahzaib shahzaib.cb at gmail.com
Thu Sep 18 11:25:33 UTC 2014


Yes, the mp4 modules is enabled on origin as well as edge. Could you please
help me resolving the issue ?

On Thu, Sep 18, 2014 at 4:21 PM, Roman Arutyunyan <arut at nginx.com> wrote:

>
> On 18 Sep 2014, at 14:49, shahzaib shahzaib <shahzaib.cb at gmail.com> wrote:
>
> > Hi,
> >
> >    We're using proxy_store on the edge server for replicating requested
> mp4 files and some of our users reported that some of the videos are half
> sized and therefore they are unable to stream whole video file on their end
> (coming from the edge server). On digging into the access_logs of nginx, i
> found the 500 internal server errors for 10~20 videos and on checking the
> size of 500 error videos it was half of the size compare to the mirrored
> video files on the origin. Please check the following error of the culprit
> video link :-
> >
> > 203.124.62.213 - - [18/Sep/2014:15:13:58 +0500] "GET
> /files/videos/2014/09/12/1410536044adf1b-360.mp4?start=729 HTTP/1.1" 500
> 588 "http://lw3.files.com/files/videos/2014/09/12/" "Mozilla/4.0
> (compatible; MSIE 8.0; Windows NT 6.0)"
> >
> > I'd like to inform that the issue is coming for 40% of the videos.
> >
> > error_log :-
> >
> > 2014/09/18 15:30:40 [error] 3883#0: *77490
> "/var/www/html/files/videos/2014/09/16/141088548798bb1-360.mp4" mp4 start
> time exceeds file duration, client: 175.110.88.213, server: lw3.files.com,
> request: "GET /files/videos/2014/09/16/141088548798bb1-360.mp4?start=736.8
> HTTP/1.1"
> >
> > You can see the "start time exceeds error" on edge server but the video
> link starting from start=736.8 exists on origin server.
> >
> > Nginx config :-
> >
> > server {
> >
> >         listen       80;
> >         server_name lw3.files.com;
> >         root /var/www/html/tunefiles;
> >         location ~ \.(mp4|jpeg|jpg)$ {
> >                root   /var/www/html/tunefiles;
> >                 mp4;
> >         error_page 404 = @fetch;
> >
> >             }
> >
> >
> >         location ~ \.(php)$ {
> >                 proxy_pass http://fl008.files.net:80;
> >         }
> >
> >
> >
> >         location @fetch {
> >         internal;
> >         proxy_pass http://fl008.origin.com:80;
> >         proxy_store        on;
> >             proxy_store_access user:rw group:rw all:r;
> >         root /var/www/html/tunefiles;
> > }
>
> Do you have the mp4 module enabled at the origin?  If so then you have
> partial mp4
> downloaded from there and stored locally.  Note proxy_pass without URI
> passes
> client URIs to the origin keeping the arguments (including “start”).
>
> _______________________________________________
> nginx mailing list
> nginx at nginx.org
> http://mailman.nginx.org/mailman/listinfo/nginx
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx/attachments/20140918/4534843c/attachment-0001.html>


More information about the nginx mailing list