Passwort-Schutz für ein Verzeichnis und alle seine Unterordner verwenden .htaccess
Ich versuche mit Passwort zu schützen, eine subdomain und alle seine Unterverzeichnisse und Dateien, aber mein wissen über die Materie ist sehr begrenzt, wie kann ich dies tun?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Es ist eine einfache zwei-Schritt-Prozess,
In Ihr .htaccess setzen
verwenden http://www.htaccesstools.com/htpasswd-generator/ oder die Befehlszeile, um Passwort generieren
und steckte es in die .htpasswd
Hinweis 1: Wenn Sie mit cPanel konfigurieren Sie im Abschnitt Sicherheit "ein Kennwort Schützen Verzeichnisse"
EDIT: Wenn das nicht funktioniert, dann vermutlich Sie tun müssen, um eine
AllowOverride All
auf das Verzeichnis, das die .htaccess (oder wenigstens zum vorherigen) in http.conf gefolgt von einem Neustart des apache.htaccess
- Datei und die.htpasswd
Dateien in den sudomain-Verzeichnis? Oder lege ich das.htpasswd
Datei im Verzeichnis möchte ich geschützt und die.htaccess
im subdomain-Verzeichnis?AllowOverride All
. (Eigentlich gibt es keine mehr http.conf; Apache verwendet nun eine separate Datei für jede Website, die im sites-available-Verzeichnis).Passwort zu schützen, ein Verzeichnis, serviert von Apache, die Sie benötigen .htaccess-Datei in dem Verzeichnis, das Sie schützen möchten und eine .htpasswd-Datei, die irgendwo auf Ihrem system, dass der Apache-Benutzer zugreifen können (sondern legen Sie es irgendwo vernünftige und privat). Sie wahrscheinlich nicht wollen, zu setzen
.htpasswd
im gleichen Ordner wie.htaccess
.Den .htaccess-Datei existiert bereits. Wenn nicht, erstellen Sie es. Dann einfügen:
Erstellen Sie dann ein .htpasswd-Datei mit einem beliebigen Benutzernamen und Passwort, die Sie wollen. Das Passwort verschlüsselt werden soll. Wenn Sie auf einem Linux-server verwenden, können Sie die htpasswd Befehl verschlüsseln Sie das Kennwort für Sie. Hier ist, wie dieser Befehl kann dafür verwendet werden:
htpasswd -b /path/to/password/file username password
würden Sie wahrscheinlich wollen, verwenden Sie diemod_auth_digest
Modul. Apache hat eine sehr schöne guide, um auf die gesamte Bandbreite der Authentifizierungs-und Autorisierungs-Module.Müssen Sie ein Kennwort generieren (Benutzername+Kennwort) - string für die Authentifizierung, schreiben Sie es auf eine Datei, und legen Sie Sie in das Unterverzeichnis, das Sie den Zugriff beschränken möchten.
String sieht so aus,
Wenn das Passwort nicht ausgelöst wird, überprüfen Sie die Berechtigung der .htaccess-Datei.
Wenn die Authentifizierung fehlschlägt, überprüfen Sie die Existenz von .htpasswd Datei in der angegebenen Position. (Stellen Sie sicher, dass Ihr Benutzerkonto über ausreichende Berechtigungen verfügen, auf .htpasswd-Datei zu Lesen)
Müssen Sie nicht den server neu starten, um dies zu erreichen.
Bitte lassen Sie mich wissen, wenn Sie irgendwelche Fragen haben.
Erstellen Sie ein Kennwort, können Sie erstellen Sie eine php-Datei und führen Sie es lokal (auf Ihrem computer, nicht auf dem webserver) mit dem folgenden Inhalt:
Ich in der Regel meine .htpasswd-Datei in einem Verzeichnis namens /htpasswd/außerhalb des webcontent-Verzeichnis, wie
AuthUserFile /home/www/usr122/files/htpasswd/.sportsbar_reports_htpasswd
(und nicht in den webcontent-Ordner/home/www/usr122/html/htpasswd/
) und umbenennen .htpasswd-Datei, was es ist, z.B..sportsbar_reports_htpasswd
Die Passwort-Datei selbst sollte Aussehen wie
denen der Benutzername ist
testusername
und das Passwort isttestuserpassword
Nur verlängern Mahesh Antwort.
.htaccess
Wenn Sie nicht möchten, dass zur Nutzung der online-Passwort-generator, die Sie verwenden konnten
openssl
Setzen Sie dann das generierte Passwort zu
.htpasswd
mit format:Beispiel:
.htpasswd