2017-04-27 4 views
0

私はMacでビデオを表示しようとしていますが、私は電話していますが、動作させることはできません。私のビデオはPHPによって提供されています、私はそれが送信されていない範囲のヘッダーと関係している読んできましたが、私はそれを正しく行う方法を把握することはできません。 相続人は私がこれまで持っているもの:Apple製品にPHPが表示されたビデオ

HTML:

<video controls="true" autoplay muted loop> 
<source src="http://my_site.com/video/394934" type="video/mp4"> 
</video> 

PHP:

// Get file GUID 
$file_guid = (int) get_input('file_guid', 0); 

// Get file thumbnail size 
$size = get_input('size', 'small'); 

$file = get_entity($file_guid); 
if (!elgg_instanceof($file, 'object', 'file')) { 
    exit; 
} 

$simpletype = $file->simpletype; 
if ($simpletype == "image") { 

// Get file thumbnail 
switch ($size) { 
    case "small": 
     $thumbfile = $file->thumbnail; 
     break; 
    case "medium": 
     $thumbfile = $file->smallthumb; 
     break; 
    case "large": 
    default: 
     $thumbfile = $file->largethumb; 
     break; 
} 

// Grab the file 
if ($thumbfile && !empty($thumbfile)) { 
    $readfile = new ElggFile(); 
    $readfile->owner_guid = $file->owner_guid; 
    $readfile->setFilename($thumbfile); 
    $mime = $file->getMimeType(); 
    $contents = $readfile->grabFile(); 

    // caching images for 10 days 
    header("Content-type: $mime"); 
    header('Expires: ' . gmdate('D, d M Y H:i:s \G\M\T', strtotime("+10 days")), true); 
    header("Pragma: public", true); 
    header("Cache-Control: public", true); 
    header("Content-Length: " . strlen($contents)); 

    echo $contents; 
    exit; 
} 
} 

答えて

2

それは実際にはレンジヘッダの問題である場合は、コード例では、これを取り組むとgithubのプロジェクトがありますサファリ/ Mac用の問題:

https://gist.github.com/codler/3906826

+0

ああはあなたに感謝します! !私の頭を1週間このままにしていた!!!!! – user2423476

+0

あなたは大歓迎です! :-) –

関連する問題