And, what if you try reading the file's contents into a variable, and then
echo that to the output buffer:
<?php
$track = "movie.mpg";
header("Content-Type: audio/mpeg");
header('Content-Length: ' . filesize($track));
header('Content-Disposition: inline; filename="movie.mpg"');
//could also, again, try attachment here
$file = fopen($track, "rb"); // end b character implements binary mode
$data = fread($file);
fclose($file);
echo $data;
exit;
?>
Just asking since that might give you more detail about what's causing the
error to happen, depending on whether the fopen. fread, etc. then trigger an
error, and, haven't bothered double checking actual file name, etc. - just
used a form of example name - and, also didn't double check code above -
sorry...<smile>
Also, you should make sure there's no HTML markup being echoed/output before
this code executes, since think it might interfere with then 'clean' output
of file contents.
Stay well
Jacob Kruger
Blind Biker
Skype: BlindZA
'...fate had broken his body, but not his spirit...'
----- Original Message -----
From: <oli.laurel@xxxxxxxx>
To: <jacob@xxxxxxxxxxxxx>; <php-windows@xxxxxxxxxxxxx>
Sent: Friday, August 02, 2013 8:48 PM
Subject: Aw: Re: Readfile() + mpg = http status 500, windows
server 2012, php 5.5.1
Sorry i forgot to answer your question:
no difference between
header('Content-Disposition: attachment; filename="movie.mpg"');
and
header('Content-Disposition: inline; filename="movie.mpg"');
thx + regards
oli
----- Original Nachricht ----
Von: Jacob Kruger <jacob@xxxxxxxxxxxxx>
An: php-windows@xxxxxxxxxxxxx
Datum: 02.08.2013 20:04
Betreff: Re: Readfile() + mpg = http status 500, windows server
2012, php 5.5.1
And, if you change Content-Disposition to something like?:
header('Content-Disposition: attachment; filename="movie.mpg"');
Jacob Kruger
Blind Biker
Skype: BlindZA
'...fate had broken his body, but not his spirit...'
----- Original Message -----
From: <oli.laurel@xxxxxxxx>
To: <php-windows@xxxxxxxxxxxxx>
Sent: Friday, August 02, 2013 6:20 PM
Subject: Readfile() + mpg = http status 500, windows server
2012,
php 5.5.1
> Hi List,
> i installed a blank Windows Server 2012 Standard, added Role IIS &
> Feature
> CGI
> extracted 5.5.1 VC11 x86 Non Thread Safe to c:\Program Files (x86)\php
> installed vcredist_x86.exe
>
> added Handler Mappings in IIS
> Request path: *.php
> Module: FastCgiModule
> Executable: c:\Program Files (x86)\php\php-cgi.exe
> Name: PHP via FastCgi
>
> Added 2 files to C:\inetpub\wwwroot index.php & movie.mpg (6MB)
> Content of index.php
>
> <?php
> $track = "movie.mpg";
> if (file_exists($track)) {
> header("Content-Type: audio/mpeg");
> header('Content-Length: ' . filesize($track));
> header('Content-Disposition: inline; filename="movie.mpg"');
> header('X-Pad: avoid browser bug');
> header('Cache-Control: no-cache');
> readfile($track);
> exit;
> } else {
> header($_SERVER['SERVER_PROTOCOL'].' 404 Not Found', true, 404);
> echo "no file";
> }
>
> ?>
>
> Now every time the index.php is requested i get an error 500 in
> Webserver
> log. But file will be delivered sucessfully.
> Is there a problem with mpg files and readfile();
> No difference with 5.4.17, 5.3.27 & Windows Server 2008 R2.
> I know its very basic, but expected result should be: HTTP-Status: 200
or?
> phpinfo() will be delivered succesful.
>
> Thx + regards
> oli
>
> --
> PHP Windows Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php