Page 1 of 1
MP3 schützen (1&1 Root)
Posted: 2003-07-15 10:50
by david04
Hallo!
Ich möchte die MP3s auf meiner Seite
http://www.treasurechest.de gegen Linkstealer schützen. Wie mache ich das, dass keiner an die URL der Lieder kommt?
Mein DL-Manager:
http://dl.treasurechest.de
Mit RewriteMOD hab ichs schon ausprobiert:
Code: Select all
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www.)?treasurechest.de/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://(dl.)?treasurechest.de/.*$ [NC]
RewriteRule .(mp3)$ http://dl.treasurechest.de [R,L]
klappt nicht :x
Was mach ich falsch bzw. wie mach ichs besser?
Grüße
D
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 11:14
by tyberius prime
was zur hoelle ist bitte ein 'linkstealer'?
Anyhow,
am einfachsten machst du das mit nem php, dass statt auf die url mit der Datei zu redirecten (wie's anscheinend im moment laeuft), das ganze mit fpassthrough() rausschiebt. Dann musst du allerdings auch noch den Header entsprechend setzen, im Zweifelsfall auf application/ocet-stream, denk ich.
Zusaetzlicher Vorteil: Du kannst die Dateien auch ausserhalb des webroots lagern, solange php dran kommt.
Gruss,
TP
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 11:18
by dea
Tyberius Prime wrote:was zur hoelle ist bitte ein 'linkstealer'?
Ein "Link-Dealer"? Vll. meint er einen, der mit Links auf Dateien Geld verdient? Ich weiß es auch nicht ;)
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 11:29
by david04
Linkstealer sind Leute, die andere Dateien einfach linken, ohne sie selbst zu hosten. Ich dachte, man nennt die so ;)
Das Problem ist, das ich das DL-Prog gerne behalten würde und da kann ich im Admin-Bereich leider nur innerhalb des Webroots wählen :(
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 11:42
by tyberius prime
Naja, wenn das script schon mal nicht die URL zum MP3 rausgibt, liegen die relativ sicher
(allerdings wuerd ich sie auch verschieben, um leute, die noch alte Links haben, abzuhalten)
Also:
pafiledb.php aufmachen.
die sollte so was in die richtung von
header('LOCATION: '[...]) haben.
da musst du im Prinzip anpacken. statt den header 'LOCATION' rauszusenden, musst du einen header('content-type') mit application/ocet-stream raussenden. dann das mp3 mit $fh = fopen($meinMP3,'r') aufmachen, und mit fputhrough($fh) raussenden).
Nicht vergessen, dass mp3 danach wieder mit fclose($fh) zu schliessen. fertig, und keiner sieht mehr deine url.
Brauchst allerding evtl. noch 1,2 header, um den Dateinamen beim Download richtig zu setzen.
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 13:24
by david04
Super!!! Das klappt.
Code: Select all
header ("Content-type: application/ocet-stream");
header("Content-Disposition: attachment; filename=[b]$filename[/b]");
$fh = fopen($file[file_dlurl],'r');
fpassthru($fh);
fclose($fh);
Wie kann ich denn jetzt den Dateinamen aus dem kompletten Pfad rausfiltern?
Z.B. aus
http://www.foo.com/file.mp3 -> file.mp3??
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 13:41
by tyberius prime
basename($dateiname),
sorry, bin in eile ;-)
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 13:48
by david04
jau, besten Dank! Funktioniert alles so, wie ich mir das vorstelle!
str_replace hätte auch geklappt aber deine Lösung ist besser :D
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-15 14:51
by captaincrunch
Ich verschiebe ins Scripting
Re: MP3 schützen (1&1 Root)
Posted: 2003-07-18 00:55
by Anonymous
Hi!
Wo liegt der Vorteil von fpassthru gegenüber readfile?
carsten