Folgendes Szenario: Ein mittelständisches IT-Beratungsunternehmen möchte sein aktuelles Produkt Kunden und Mitarbeitern auf einem Webserver zum komfortablen Download anbieten, möchte aber nicht, dass es einfach Jedermann herunterladen kann. Rein pragmatisch betrachtet reicht es unter Umständen erstmal, den Link zur Datei nur ausgewählten Empfängern zukommen zu lassen, aber besser fühlt man sich als Berufspessimist (Programmierer), wenn das ganze durch ein Passwort geschützt ist.
Mit Hilfe von .htaccess
-Dateien ist es möglich, bestimmte Verzeichnisse und die darin liegenden Dateien nur nach korrekter Eingabe von Benutzer//Passwort anzuzeigen.
Auf dem Webserver benötigt man zwei Dateien (Die Werte in eckigen Klammern müssen natürlich entsprechend ersetzt werden):
# .htaccess:
AuthType Basic
AuthName "Name_der_Firma-Download"
AuthUserFile [ABSOLUTER_PFAD_ZUM_USER_FILE]
Require valid-user
und
# .users
[name]:[verschlüsseltes_passwort]
Wichtig ist natürlich, dass die .htaccess
-Datei in dem Ordner liegt, der durch den Login geschützt werden soll. Der Wert, den man für das verschlüsselte Passwort eintragen muss, lässt sich mit Hilfe des folgenden Links bestimmen: SelfHTML-Beschreibung zu htaccess.
Nun bleibt nur noch das Problem, den absoluten Pfad korrekt einzutragen. Wenn man einen einfachen Webhosting-Service benutzt, braucht man diese Information sonst meistens nicht. Mit folgendem PHP-Script bekommt man diese Info:
<?php
// get_path.php
echo $_SERVER['DOCUMENT_ROOT'];
?>