wolfuli

htaccess Dateien mit PHP für die Verwendung mit Nginx erzeugen

Gelegentlich muss ich in Nginx den passwortschutz für eine Seite konfigurieren. Jedes Mal suche ich wieder, wie ich das am einfachsten auf der Kommandozeile durchführe, da htpasswd eigentlich eine Apache-Tool ist.

Werbung


Ich habe bei mir immer PHP installiert, daher werde ich das nutzen. Um das Passwort „fooB4rB4z“ in einer htpassed-Datei zu generieren, muss der Befehl dazu wie folgt aussehen:

php -r "echo crypt('fooB4rB4z', base64_encode('fooB4rB4z'));"

Das sieht dann so aus:
htpasswd für PHP

Dann fügt man diesen String wie folgt in die htpasswd ein:

echo 'MyCoolUsername:Zmi.VLGYm/RZM' >> /etc/nginx/htpasswd

Dann muss man noch den VHost konfigurieren:

location / {
  auth_basic  "Restricted Area - Please enter Username & Password";
  auth_basic_user_file  /etc/nginx/htpasswd;
}

Einmal die Konfiguration von Nginx neu einlesen lassen und schon kann man sich per „MyCoolUsername“ mit dem passwort „fooB4rB4z“ einloggen.

Veröffentlicht von

Uli

IT-Nerd und Admin