Apache und .htaccess


thedude

Registered User
hi leute,

habe probleme beim einrichten von passwortgeschützten ordnern mit .htaccess-files mit apache 1.3.29:

httpd.conf:
einzige änderung:
<Directory "E:/intranet/Apache/htdocs">
Options Indexes FollowSymLinks MultiViews

AllowOverride All #<<---

Order allow,deny #<<---
Allow from 192.168.30 #<<---
Allow from 192.168.40 #<<---
Allow from 192.168.60 #<<---
Allow from 192.168.90 #<<---

</Directory>

.htpasswd:
test:$apr1$fo2.....$ZQVaYvVGL7aeQdCB2RfeS/
test2:$apr1$sq2.....$Kg8RrMDkhgnQ1EPGuNT86.

.htaccess:
AuthType Basic
AuthName "Login erforderlich!"
AuthUserFile e:/intranet/apache/htdocs/html_auth/.htpasswd
Require valid-user
Require user test test2

Problembeschreibung:
Wenn ich einen totalen Pfad in der .htaccess angebe, wird kein Passwortfenster angezeigt, mit relativem Pfad macht er zwar das Passwortfenster, aber er beachtet die .htpasswd dabei nicht (er nimmt keinen der eingetragenen benutzernamen mit entsprechendem passwort an!)
Habe nur zum test die .htpasswd in einen anderen ordner verschoben, keine Fehlermeldung oder Reaktion, nur genauso kein einloggen möglich (genauso wie mit der Passwortfile)
Habe ich irgendwo im code einen Fehler, der dazu führt, das die Passwortfile nicht genutzt wird?
Des weiteren würde ich gerne den verschiedenen benutzern Rechte vergeben (nur lesen; lesen und schreiben) ist das mit der funktion <limit> machbar?

Danke im voraus für alle Antworten
dude
 
thedude said:
Wenn ich einen totalen Pfad in der .htaccess angebe, wird kein Passwortfenster angezeigt
Evtl. hat Dein Browser noch ein altes Login gespeichert?
Grundsätzlich muß ein totaler Pfad angegeben werden, oder relativ ausgehend von ServerRoot (nicht zu empfehlen).

Schmeiß zum Testen die 'Order allow,deny'-Sachen raus. Die behindern nur.
(Ich glaub Du hast sie auch falsch rum. Erst 'Deny from all' und dann 'Allow from ...'. Kann mich jetzt aber irren.)

Zusätzlich: Auch wenn Du auf einem Windows-System bist, solltest Du sehen, daß Du alle Pfade/Dateien kleinschreibst. Kann sein, daß Apache intern nicht so freizügig ist, wie Windows selbst.

Des weiteren würde ich gerne den verschiedenen benutzern Rechte vergeben (nur lesen; lesen und schreiben) ist das mit der funktion <limit> machbar?
Ja, dafür ist die da: <Limit PUT DELETE> require User test </Limit>
Allerdings würde ich niemals PUT, DELETE, etc. nutzen. ;)

huschi.
 
OK, hab jetzt alle Pfad absolut gemacht und kleingeschrieben *G* und die Allow/Deny-Sachen rausgenommen und - siehe da, es geht !!! (Er nimmt schon mal die Passwortfile her *juhu*)

Allerdings hab ich noch ein kleines Problem - ich habe mehrere Ordner auf die verschiedene Benutzer unterschiedliche Berechtigungen haben sollen (gerade kann jeder Benutzer auf jeden passwortgeschützten Ordner zugreifen)
So als würde er die Zeile "Require user test test2" nicht verarbeiten (überspringen). Weist du dazu auch eine Lösung? (Ist eigentlich blödsinnig, habe keine spaces zwischen den zeilen und hab auch zum test den Browser neugestartet) Wie kann es sein, dass jeder User in der Passfile auf alle Ordner zugreifen darf ?

zu <Limit>: Wo müssen die Parameter eingegeben werden, in der .htaccess oder in der httpd.conf ?

THX

dude
 
Die Limit Einträge werden in der HTTPD.CONF in der Direktive für das zu schützende Verzeichnis gemacht.
Unter Linux würde ich sagen: Leg die User + Passwörter mal mit dem Tool htpasswd an..aber da es ein Windowssystem ist: Wie legst du die .htpasswd File überhaupt an, via Webinterface?!

EDIT:
Wie ich gerade gesehe habe, ist es auch in der .htpasswd möglich,sieht dann ca. so aus:
Code:
AuthUserFile /etc/passwd 
AuthType Basic 
<Limit PUT> 
order allow, deny 
allow from all 
require user $USER 
</Limit>
 
Last edited by a moderator:
djrick said:
Wie ich gerade gesehe habe, ist es auch in der .htpasswd möglich,
Du meinst Bestimmt .htaccess, oder? ;)

htpasswd wird übrigends auch beim win-Apache mitgeliefert.

thedude said:
Wie kann es sein, dass jeder User in der Passfile auf alle Ordner zugreifen darf ?
Weil er sich authorisiert hat???
Entweder hab ich die Frage nicht richtig verstanden, oder Du das Problem nicht gut genug geschildert... :)

huschi.
 

Back
Top