PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .htaccess wird ignoriert



headmyshoulder
26.02.08, 17:46
Hallo,

nachdem ich nun ca. 4h probiert habe einen Teil werde ich Euch jetzt um Rat fragen:

Ich will eine Seite in meinem public_html Verzeichnis mit .htaccess passwort schützen. Das Problem dabei ist, dass die .htaccess komplett ignoriert wird. Syntaxfehler erzeugen keine Fehlermeldungen. Ich hab auch schon ein bisschen damit rumgespielt und eine Vermutung, dass es am mod_userdir liegen könnte. Wenn ich die selbe .htaccess in ein Unterverzeichnis von /var/www/htdocs kopieren, kommt die Password abfrage, nur in meinem public_html Verzeichnis nicht. Der entsprechende Eintrag in mod_userdir.conf sieht so aus:



<IfModule mod_userdir.c>
UserDir disabled root
<Directory /home/*/public_html>
AllowOverride AuthConfig FileInfo Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>
</IfModule>
und die .htaccess sieht so aus:



AuthType Basic
AuthName "Password"
AuthUserFile /etc/htpasswd
Require valid-user
Hat jemand eine Idee woran das liegen könnte?

Vielen Dank und liebe Grüsse

asi_dkn
26.02.08, 19:29
hast du die Direktive AccessFileName (http://httpd.apache.org/docs/2.2/mod/core.html#accessfilename) auch richtig konfiguriert?

headmyshoulder
26.02.08, 19:41
Hab ich gemacht, wie gesagt in /var/www/htdocs funktioniert die .htaccess, nur in meinen public_html nicht. Kann es sein, dass es daran liegt, dass mein home verzeichnis nicht in /home liegt sondern in /users ?

defcon
26.02.08, 19:47
Seit wann liegt das /home Verzeichniss in "/users"? Ist ja ganz was Neues.. Hab ich was verpasst?

headmyshoulder
26.02.08, 19:53
Hast recht, aber eigentlich sollte das kein Problem darstellen, oder? Ich mein der apache zeigt die Seite ja vernünftig an, nur das .htaccess mag er überhaupt nicht.

asi_dkn
26.02.08, 20:36
<Directory /home/*/public_html>
AllowOverride AuthConfig FileInfo Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>

Mach das auch noch für <Directory /users/*/public_html>, dann klappts vermutlich auch ;)

headmyshoulder
26.02.08, 21:33
Danke, das klappt. Allerdings ist mir nicht klar warum das funktioniert. Der alter Eintrag in der mod_userdir.conf sorgt auch dafür, dass ein Aufruf localhost/~user die Datei in /users/user/public_html ausgibt. Komisch.

Aber trotzdem vielen Dank.

asi_dkn
26.02.08, 23:51
Ohne mir 100% sicher zu sein: Apache holt wohl die Homes aus der /etc/passwd. Die Directory Direktive greifft aber nur für die User-Verzeichnisse unter /home/... passt schon.