PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache: .htaccess Basic Auth greift nicht


mf_2
2011-09-24, 14:41:55
Hallo zusammen,

ich betreibe zusammen mit ein paar anderen ein sehr kleines Forum und dort wollte ich gerade ein Verzeichnis mit htaccess für den Zugriff limitieren. Um zugreifen zu können muss man einen Namen und Passwort eingeben, authentifiziert wird mit HTTP Basic Auth.

Folgendes steht in meiner .htaccess Datei

AuthType Basic
AuthName "Backups"
AuthUserFile /home/seite/public_html/backup_scripts/.htpasswd
Require valid-user



Und das steht in meiner .htpasswd Datei (Hash wurde geändert, aber die Struktur der Datei sollte deutlich sein)

backupuser:$apr1$kiAIO...$KaWypDmfUCejzVsSBTS/T.


Nun ist mein Problem, dass ich keinen HTTP Anmeldedialog bekomme, sondern direkt auf unser 401 Fehlerdokument (/401.shtml) weitergeleitet werde.

Woran kann sowas liegen? Gibt es da eine globale Servereinstellung die mir da in die Suppe spucken kann? Ich kenne mich da leider nicht so aus.
Allerdings habe ich bei einem anderen meiner Webspaces sowas schonmal eingerichtet und das funktioniert.

Edit: Google sagt dass eine häufige Fehlerquelle darin besteht, den Pfad zur Passworddatei nicht absolut anzugeben. Dies habe ich jedoch getan.

Gast
2011-09-24, 16:31:47
Globale Config: Stichwort "AllowOverride"
Ansonsten hilft das error-log des Apache weiter.

mf_2
2011-09-24, 17:40:31
Es ist ein einfaches Webhosting-Paket, ohne eigenen Server, aber mit .htaccess Unterstützung. Daher werde ich eher nicht an die Apache Logs rankommen.

Ich habe mal hier (http://httpd.apache.org/docs/2.3/mod/core.html#allowoverride) nachgesehen, aber für AllowOverride muss man wohl auch Zugriff auf den Server haben, zumindets auf die httpd.conf (, korrekt?).

Gibt es noch einen anderen Grund warum das nicht hinzuhauen scheint?

Es ist ja auch nicht so dass htaccess komplett ignoriert wird. Ohne htaccess kann ich das Verzeichnis (bzw. eine Datei darin) ohne Probleme über den Browser aufrufen. Sobald die htaccess Datei drin ist, so werde ich direkt auf die 401 Seite weitergeleitet.

Sephiroth
2011-09-24, 18:24:34
1) überprüfe nochmal den Pfad
2) stelle sicher, dass die datei vom webserver auch gelesen werden darf
3) datei mit "htpasswd (http://httpd.apache.org/docs/2.3/programs/htpasswd.html) -c .htpasswd backupuser" auf dem server neu erstellen. möglicherweise wurde ein nicht-unterstütztes hashing verfahren genutzt, wenn du die datei z.B. unter windows erstellt hast.

mf_2
2011-09-24, 20:18:27
Es lag an den Dateirechten! Juhu, es tut!! Danke vielmals :-)

mf_2
2011-09-24, 20:37:02
Mist, jetzt kommt zwar die Abfrage, aber dann kommt

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, webmaster@seite.de and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.


Wenn ich jetzt wüsste was diesen Fehler verursacht wäre es gut, aber der ist schon verdammt allgemein. Kann man das rausfinden ohne Serveradmin zu sein?

Sephiroth
2011-09-24, 20:54:28
Eventuell ist AuthConfig laut AllowOverride nicht erlaubt. Um das zu ändern müsstest du dich aber mit deinem Webspace-Anbieter auseinandersetzen. Der bietet dir vielleicht die Möglichkeit einen Verzeichnisschutz via Webinterface einzurichten und erlaubt Änderungen via .htaccess nicht.

mf_2
2011-09-24, 21:59:08
Ok stimmt, man kann das tatsächlich über's Webinterface machen und da tut es. Ich habe mir mal die generierte htaccess Datei angesehen und der einzige Unterschied ist dass die htpasswd Datei nun ganz woanders (außerhalb des web roots) liegt. Komisch. Naja so lange es jetzt tut ...

Vielen Dank für deine Hilfe!