2014-02-18 108 views
2

我正在使用媒體模塊將媒體保存在CDN中。要播放視頻,我們在Drupal 7中使用jwplayer。Jwplayer在IE中拋出錯誤,如果視頻不是content type [mime type] * video/mp4 *。我已將現有的CDN視頻mime類型從application/octet-stream更改爲視頻/ mp4在drupal 7中更改CDN中的視頻內容類型(mime類型)

現在無論MP4視頻被上傳/保存到CDN只應視頻/ MP4 MIME類型,但是當我上傳在媒體模塊的MP4視頻是MIME類型應用程序/八位字節流,如何保存在CDN我是否將上傳的mime type [content type]更改爲視頻/ mp4

CDN module code 

function CDNtransfer_content($source,$destination) { 

     $s3=_CDN_transfer_load(); 

     $up_bucket="cdn.example.com"; 

     $uploadOk=null; 

     $expires=date('D, d M Y H:i:s O', strtotime('+10 year')); 

     $headers=array('Content-Type' => 'video/mp4', 'Expires' => $expires); 

     if($destination) 
     { 
         $up_state=$s3->putObject($up_bucket, $destination, $source, 'true', $headers); 

         if($s3->objectExists($up_bucket, $destination)) { 
          $uploadOk =1; 
         } 
         else { 
          $uploadOk ="Error: File Not Uploaded Correctly. Please try again."; 
         } 
     } 
     return $uploadOk; 
} 

即使設置上面的標題似乎不工作!不知道爲什麼?

我們在drupal中使用我們的自定義模塊s3 php sdk 2 aws stand alone class

如何在媒體模塊Drupal 7中更改mime type[content type]視頻/ mp4當mp4視頻正在上傳時。

回答

1

MIME-TYPE是服務器端設置。您可以要求您的主機提供商爲您添加MP4 MIME-TYPE。

或者,您可以將.htaccess文件添加到存儲上傳的目錄。

,增加了對MP4的MIME類型的樣本.htaccess文件是:

<IfModule mod_rewrite.c> 
    AddType video/mp4 .mp4 
</IfModule> 

如果您無法添加MIME類型正確,一個工作,你周圍可以使用很給力的JW播放器作爲運行Flash,這是有關MIME類型不太嚴格,加入這一行,你的播放器的嵌入代碼:

primary: 'flash', 

讓我知道,如果這有助於!

+0

我正在與我的團隊檢查....我發現這裏的東西類似http://stackoverflow.com/a/10040559/1877909 我們沒有任何選擇喜歡這個 ?? – Hitesh

+0

您是否將文件存儲在blob上? – emaxsaun

+0

我改變了.htaccess文件,但似乎沒有爲CDN.I找到這兩個鏈接有一些什麼simliar問題,但沒有解決方案 - > http://stackoverflow.com/questions/9090708/why-is- this-mime-type-in​​correct ..... https://forums.aws.amazon.com/thread.jspa?messageID=420907񦰫 – Hitesh

1

找到了答案:

1)由於伊森說:「一個MIME-TYPE是一個服務器端的設置你可以問問你的託管服務提供商添加了MP4 MIME類型爲你

或者,。您可以將.htaccess文件添加到您上傳的目錄中「。

,增加了對MP4的MIME類型的樣本.htaccess文件是:

<IfModule mod_rewrite.c> 
    AddType video/mp4 .mp4 
</IfModule>" 

來源:Need to Change Video Content Type to video/mp4 so it plays in IE

但是,這並沒有爲我工作,出於某種原因

2)我做在我用於CDN上傳的drupal模塊中使用的核心類文件中的更改 我在class.s3.php文件中進行了更改 - >在mime_type []數組中,並且還使用putObject()函數進行了交叉檢查。

**

MIME類型的設置始終在編碼端,而不是在AWS S3 桶做,我們需要使用AWS PHP類文件或SDK做 操縱MIME類型或做在覈心類 文件(如class.s3.php)進行必要的修改

** 詳情點擊這裏find-mime-type-of-file-or-url-using-php-for-all-file-format

第二個答案已經爲我工作:)