Sven Rautenberg: .htaccess und PDF-Dateien vertragen sich nicht

Beitrag lesen

Moin!

Ich möchte in einem bestimmten Verzeichnis (z.B. /down_pdf/) einige PDF-Dateien zum Download anbieten. Dieses Verzeichnis ist mit einem Backdoorschutz mittels .htaccess geschützt. D.h durch eine Refererprüfung ist ein direkter Aufruf des Verzeichnisses von Außen nicht möglich der Besucher wird automatisch zur Startseite weiter geleitet. Nur mein eigene Server (Domain) hat über ein cgi-Script eine Zugriffsberechtigung auf die enthaltenen Dateien. Die Funktion des Backdoorschutzes habe ich getestet und ist ok.

Die .htacces im Verzeichnis /down_pdf/ hat folgenden Inhalt:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://meineDomain.de/ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.meineDomain.de/ [NC]
RewriteRule /* http://www.meineDomain.de/index.html [R,L]

Auf diese Weise schließt du alle Programme und Benutzer aus, die keinen Referrer senden.

Dein Ansatz ist äußerst fragwürdig. Es ist nirgendwo im HTTP-Standard vorgesehen, dass eine Ressource nur dann abgerufen werden darf, wenn sie einen "richtigen" Referrer sendet. Insofern kann es durchaus sein, dass der Acrobat Reader Probleme macht, weil er vielleicht ebenfalls als HTTP-Client auftritt (vielleicht als Plugin im Browser), aber eben keinen Referrer sendet.

Über einen Tipp wie dieser Fehler behoben werden kann würde ich mich freuen!

Naja, ich denke, der Ansatz ist klar: Lass den Müll mit dem Referrer-Checken, und alles wird gut. Manche Besucher können sich nicht aussuchen, ob und welchen Referrer sie schicken. Sie schicken entweder gar keinen (der Proxy filtert z.B. die Angabe raus, weil der Admin das so will), oder der Referrer entspricht immer der URL (was immerhin den Zugriff erlauben würde - aber auch dann, wenn man von ganz woanders kommt). Jedenfalls ist äußerst schlecht, dass sein System dann schlicht und einfach auf eine andere Seite umleitet, ohne zu vermelden, was falsch ist. Dann hat man nämlich gar keine Chance, vielleicht doch noch an die PDF-Datei zu kommen - du schneidest dir selbst ins eigene Fleisch, weil du nur einen Haufen "broken links" anbietest.

- Sven Rautenberg