2013-06-14 5 views
4

내 사이트에서 동영상 다운로드 옵션을 제공하려고합니다. 다운로드 할 수있는 직접 링크 (.mp4/.webm 결말 포함)가 있습니다 (문제가되는 경우 내 서버에서 호스팅되지 않습니다). 이것은 내가 뭘하려 : 그것은 단지 크롬에서 작동어떻게 비디오 파일을 다운로드 할 수 있습니까?

 <a href="http://stream.flowplayer.org/bauhaus/624x260.webm" download>Download</a> 

, 파이어 폭스에서 그냥 브라우저 자체의 비디오가 열립니다.

답변

0

HTML5는 예제에있는 다운로드 속성을 추가하지만 비어 있습니다. 다운로드 속성에 값을 추가하십시오.

태그의 다운로드 변경 다운로드 = "624x260.webm"입니다.

비 HTML5 호환 브라우저의

http://updates.html5rocks.com/2011/08/Downloading-resources-in-HTML5-a-download

, 가장 간단한 방법은 '바로 다운로드 클릭'하는 방향으로의 링크를 동반하는 것입니다. 이것은 대부분의 경우와 브라우저를 포함합니다.

두 가지 기술에 대한 개요는 여기 있습니다. 파일을 압축 할 수 없다는 것을 알고 있습니다.

http://webdesign.about.com/od/beginningtutorials/ht/download_link.htm

은 웹 서버 설정을 수정을 포함하여이 작업을 수행하는 다수의 많은 참여 방법이 있습니다,하지만 모든 사람이 그렇게 할 수있는 액세스/노하우를 가지고있다.

1

Content-Type Content-Disposition 헤더를 적절하게 설정하고 제공 할 파일을 출력하는 래퍼 스크립트가 필요합니다.

PHP에서

이이 같이 할 것입니다 :

파일 이름 : 624x260.php

<?php 
// We'll be outputting a webm video 
header('Content-type: video/webm'); 

// It will be called downloaded.webm 
header('Content-Disposition: attachment; filename="download.webm"'); 

readfile('624x260.webm'); 
?> 

다음과 같이 다음, 대신 PHP 파일에 연결합니다 :

<a href="624x260.php">Download</a> 
+0

감사합니다, 그것은 작동하지만 지금은 당신이 괜찮다면 다른 질문이 있습니다; http : // user : [email protected]/bauhaus/624x260.webm과 같은 사용자 이름과 암호가 포함 된 비디오 링크를 추가하려고했지만 나에게 적합하지 않습니다. 내가 사용자와 함께 브라우저에서 실행하려고 할 때 작동합니다. – user1938653

+0

PHP 파일의 비디오에 대한 절대 링크를 사용하십시오 (http : // 포함) : ... readfile ('http : // user : [email protected]/bauhaus/624x260.webm') ; ' – Alfie

+0

나는 그것을 시도했지만 작동하지 않았다. 그것을 시도한 파일은 실제로 .mp4 였기 때문에 content-type을 "video/mp4"로 변경했지만 도움이되지 않았습니다. – user1938653

0

참고 : 다운로드 속성은 Chrome 14 이상 및 Firefox 20 이상에서 지원됩니다. 다른 브라우저에 대한 대안으로

, 당신은 당신이 일어날 경우가

<a href="http://video.webmfiles.org/elephants-dream.webm" class="download" target="_blank">Download</a> 

     $(document).on("click", "a.download", function() { 
      $.fileDownload($(this).prop('href')) 
       .done(function() { alert('File download a success!'); }) 
       .fail(function() { alert('File download failed!'); }); 

      return false; 
     }); 
+0

파이어 폭스 21이 있는데 작동하지 않습니다. 크롬에서도 작동합니다. – user1938653

0

처럼 다운로드 할 수있는 당신은 할 수 있습니다 여기 http://johnculviner.com/jquery-file-download-plugin-for-ajax-like-feature-rich-file-downloads/4

또는

http://jqueryfiledownload.apphb.com/

에서 jQuery 플러그인을 사용할 수 있습니다 .htaccess 파일을 편집 할 수있는 아파치 서버를 갖기 위해서는이 줄을 추가하십시오.

AddType application/octet-stream .webm 

이렇게하지 않으려면 PHP를 통해이 작업을 수행 할 수 있습니다.

PHP 코드 :

<?php 
$file = $_GET['file']; 
header ("Content-type: octet/stream"); 
header ("Content-disposition: attachment; filename=".$file.";"); 
header("Content-Length: ".filesize($file)); 
readfile($file); 
exit; 
?> 

HTML 코드 :

<a href="direct_download.php?file=fineline.mp3">Download the mp3</a> 
관련 문제