Zur Navigation

Download Link verbergen / verändern / manipulieren

1 Heiko (Gast)

Hallo Jörg,
wie der Name schon sagt, möchte ich einen möglichen direkten Aufruf einer Datei unterbinden.

Der Downloadlink wird nur registrierten Usern angezeigt, soweit schon mal eingeschränkt.
Allerdings geben diese ja gern auch mal Links weiter ... und dann wird die Datei direkt geladen ... da in dem Ordner keine Abfrage auf "registriertes Mitglied" erfolgt.

Ich möchte daher einen gefakten Link so umleiten / umschreiben, das dieser in das eigentliche Verzeichnis zur richtigen Datei umgeleitet wird, ohne aber die URL dem User bekannt zu geben.

Fake URL Beispiel:
www.example.org/laden/datei/XXX-YYYYY.pdf (XXX sind Buchstaben - YYY sind Ziffern)

In Warheit aber liegt die Datei unter:
www.example.org/laden/downloads/geheimordner/XXX-YYYYY.pdf (XXX sind Buchstaben - YYY sind Ziffern)
Hast Du eine Idee wie ich das umsetzen kann? Der Dateiname ist immer nach gleichem Schema aufgebaut.

Besten Dank vorab!

gruß Heiko

25.02.2013 16:06

2 Jörg

Allerdings geben diese ja gern auch mal Links weiter ... und dann wird die Datei direkt geladen ... da in dem Ordner keine Abfrage auf "registriertes Mitglied" erfolgt.

In dem Verzeichnis /laden/datei erfolgt diese Abfrage? wenn nicht, macht das Umschreiben der URL wenig Sinn, weil nicht berechtigte User dann über die umgeschriebene URL die betreffenden Dateien downloaden können.

25.02.2013 16:38

3 Heiko (Gast)

Ja, die Abfrage findet dort statt.
(Sorry, mobil geantwortet - daher sehr kurz).

Gruß Heiko

25.02.2013 22:54

4 Jörg

Mit mod_rewrite könnte es in etwa so gehen:

RewriteEngine on
RewriteRule ^laden/datei/([a-zA-Z]+)-([0-9]+)\.pdf$ laden/downloads/geheimordner/$1-$2.pdf

25.02.2013 23:06

5 Horst_M

Zitat von Heiko
Ich möchte daher einen gefakten Link so umleiten / umschreiben, das dieser in das eigentliche Verzeichnis zur richtigen Datei umgeleitet wird, ohne aber die URL dem User bekannt zu geben.
Nur um den Namen und das Verzeichnis der Downloaddatei bzw. des Downloadarchivs zu verschleiern, habe ich in einem anderen Verzeichnis nur eine kleine Datei mit folgendem Inhalt zu liegen:

<?php
function ladevon($data, $name){
	
	$groesse = filesize($data);
	header("Content-type: application/octet-stream");
	header("Content-disposition: attachment; filename=".$name);
	header("Content-Length: ".$groesse);
	header("Pragma: no-cache");
	header("Expires: 0");
	readfile($data);
}
	
	ladevon("../hier_liege_ich/data-001.zip","zeige_an_beim_download.zip");
?>
Diese wird dann verlinkt und beim Download wird nur zeige_an_beim_download.zip angezeigt, nicht aber, dass das Zip-Archiv im Verzeichnis /hier_liege_ich abgelegt wurde und auch nicht dessen eigentlicher Name. Ist nicht auf meinem Mist gewachsen, fand diese Lösung mal in einem Buch.

01.03.2013 15:56

Beitrag schreiben (als Gast)

Beim Verfassen des Beitrages bitte die Forenregeln beachten.





[BBCode-Hilfe]