2012-10-16 2 views
1

음악가가 음악을 업로드 할 수있는 음악 포털에서 일하고 있습니다. 음악 다운로드는 결제 과정을 거칩니다. 나는 음악 재생에 JPlayer를 사용하고 있습니다.JPlayer Media File Access

jplayer 누구나 소스보기 및 다운로드 파일을 통해 음악 파일의 경로를 직접 볼 수 있습니다.

파일이 직접 액세스하지 못하게하려면 어떻게해야합니까? .htaccess을 통해 파일을 재생하려고했지만 음악을 재생할 수 없습니다.

는 왜

RewriteEngine on 

RewriteCond %{HTTP_REFERER} !^http://(www\.)?abc.com/trakvanapp/ [NC] 

RewriteCond %{HTTP_REFERER} !^http://(www\.)?abc.com/trakvanapp/.*$ [NC] 

RewriteRule \.(mp3)$ - [F] 

감사를 작동하지 않습니다.

답변

0

jPlayer (또는 다른 HTML5 오디오 플레이어)에서 재생하려면 파일을 공개적으로 액세스 할 수 있어야합니다. 다시 쓰기 규칙은 파일을 다시 작성한 URL에서 계속 액세스 할 수 있으므로 좋지 않습니다 (그렇지 않은 경우 w/jplayer에서 작동하지 않음).

제가 생각할 수있는 최선의 해결책은 스크립트에서 파일 이름을 가리는 것입니다. 매우 낮은 기술이지만 99.9 %의 사용자가 직접 URL을 발견하지 못하게 할 것입니다. 많은 사람들이 소스를보고 링크를 찾을만큼 충분히 호기심이 많지만, 그보다 더 복잡하다면 대부분의 사람들은 신경 쓰지 않을 것입니다.

그래서 파일에 대한 http://example.com/randomdirectoryname123/123random/mysong.mp3에서 내가 사용

var p1="http://"; 
var p3="randomdirectoryname123"; 
var p2="example"; 
var p4="123random"; 
var thefile="mysong"; 
var thelink = p1 + p2 + ".com/" + p3 + "/" + p4 + "/" + thefile + ".mp3"; 

... 

$(this).jPlayer("setMedia", { 
      mp3:thelink 
     }); 

은 분명히이 파일을 전달 실제 보안 방법이 아닙니다 - 단지 조 불어에서 더 나은 위치를 숨기고.