Heim > Artikel > Betrieb und Instandhaltung > So verwenden Sie htpasswd, um die Website in Nginx mit einem Passwort zu schützen
Der Endeffekt ist ähnlich (die Benutzeroberfläche verschiedener Browser ist unterschiedlich):
Wenn die Authentifizierung fehlschlägt, wird ein http-Fehler gemeldet : 401 Autorisierung erforderlich.
Um eine solche Funktion zu implementieren, müssen Sie die Serverkonfiguration ändern und den Benutzernamen und das Passwort für die Anmeldung festlegen.
Zuerst müssen wir die Nginx-Serverkonfiguration der Website ändern. Für den Ubuntu-Server befindet sich diese Konfigurationsdatei normalerweise unter /etc/nginx/sites-enabled/. Ich verwende beispielsweise die Standardkonfigurationsdatei /etc/. nginx/sites-enabled hier. /default, um ein Beispiel zu erstellen:
Code kopieren Der Code lautet wie folgt:
server {
server_name www .fancycedar.info
root / www/fancycedar
# ...
location / {
# Fügen Sie die folgenden zwei Zeilen hinzu
auth_basic „restricted“ ;
auth_basic_user_file htpasswd;#🎜🎜 ## ...
}
# ...
}
htpasswd path
und nginx.conf können sich im selben Verzeichnis befinden. Bei Ubuntu-Servern befindet es sich normalerweise unter /etc/nginx/.
htpasswd content
Jede Zeile ist für einen Benutzer und das Format ist Benutzername:Passwort. Bitte beachten Sie jedoch, dass es sich bei dem Passwort hier nicht um Klartext handelt, sondern um eine durch crypt(3) verschlüsselte Zeichenfolge. Sie können einen PHP-Code verwenden, um das Passwort in htpasswd zu generieren:
Code kopieren Der Code lautet wie folgt:
//Passwort Klartext
$password = 'irgendein Passwort';// Verschlüsseln Sie das Passwort
$password = crypt($password, base64_encode($password));
// Erhalten Sie das verschlüsseltes Passwort#🎜 🎜#echo $password;
Dann schreiben Sie die Zeichenfolge in die htpasswd-Datei:
Code kopieren Der Code lautet wie folgt: #🎜🎜 #
Benutzername1 ;
sudo chmod 640 htpasswd
#🎜🎜 #sind Sie bereit?
wann Nachdem die oben genannten Vorbereitungen abgeschlossen sind, können wir den Nginx-Server neu laden oder neu starten:
Kopieren Sie den Code. Der Code lautet wie folgt: #🎜🎜 #
sudo /etc/ init.d/nginx reload
sudo /etc/init.d/nginx restart
Das obige ist der detaillierte Inhalt vonSo verwenden Sie htpasswd, um die Website in Nginx mit einem Passwort zu schützen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!