I'm running Nginx v1.2.7 from the Nginx repo, with mp4 module enabled.
I added this to my conf:
location ~ \.mov {
mp4;
mp4_buffer_size 1m;
mp4_max_buffer_size 5m;
}
location / {
try_files $uri $uri/ @rewrite;
}
location @rewrite {
# Some modules enforce no slash (/) at the end of the URL
# Else this rewrite block wouldn't be needed (GlobalRedirect)
#if ($uri !~* /gcal/(.*)$) {
rewrite ^/(.*)$ /index.php?q=$1 last;
#}
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_intercept_errors on;
fastcgi_pass unix:/var/run/phpfpm.sock;
fastcgi_read_timeout 300;
fastcgi_send_timeout 300;
}
I'm pseudo-sreaming using flowplayer 3.2.5. When I attempt to view a video, I get:
200 stream not found Netstream.play.....
In the error logs, I get this:
10.10.100.149 - - [15/Mar/2013:17:21:58 +0000] "GET /flowplayer/flowplayer.commercial-3.2.5.swf?0.8039274555630982 HTTP/1.1" 200 326175 "http://mywebsite.com/courses/video-course" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.22 (KHTML, like Gecko) Chrome/25.0.1364.172 Safari/537.22"
2013/03/15 17:21:58 [error] 9872#0: *1210 open() "/var/www/p.php/201303-video/video-course.mov" failed (20: Not a directory), client: 10.10.100.149, server: www.mywebsite.com, request: "GET /p.php/201303-video/video-course.mov?Expires=1365960115&Key-Pair-Id=APKAJHTHBGFXZDNBWLIQ&Signature=bMteSYSc1Cd2ILJtNfh6h~DwaOJhoOpxvHdBSaMctKzKlJrIkRMs4XltP1qKsZmGW0ZwYPL4229VIKa-fSB6koLpxRMFwJ~QJuzA2CmFO1ZCQ8NSHcxV2tAG4tLUOwLif112MJtNYrUtGhEh4ESmQPjAEpUq8JbM45F7uRPdmWg_&From=/courses/video-course HTTP/1.1", host: "www.mywebsite.com", referrer: "http://www.mywebsite.com/courses/video-course"
It works via Apache, so my guess is that my Nginx config is not quite right. Any pointers would be appreciated. This is a Drupal hosted website.
I realize there is a "Not a directory" error, which I am guessing may be an indication that the nginx config is not correct, because that URL is invalid. Probably because I'm not processing the locations correctly for this functionality. But, I'm not sure exactly what needs to be changed at this point for it to be correct.