Apache mit .htaccess: Directorylisting braucht sehr lange
Hallo zusammen, ich habe hier ein sehr merkwuerdiges Problem. Nach der Eingabe der URL "https://abc.de.lucent.com:8002/Upload/x/ops/" dauert es sehr mehrere Minuten bis ein Directorylisting angezeigt wird. Im error-log finde ich dann auch die Meldung: client denied by server configuration: /home/see/www/doc-abc-sec/Upload/x/ops/.htaccess obwohl ich in dem .htaccess File als berechtigt eingetragen bin. In "/home/.../x/ops" befinden sich 200 Directories, in denen sich keine weitereen .htaccess Files befinden. Irgendwie habe ich den Eindruck, dass der Apache in alle Sub-Directories nach .htaccess Files schaut. In der Apache Doku habe ich nur gefunden, das der Apache in den uebergeordneten Directories nach .htaccess Files sucht, aber nicht in Sub-Directories. Mein Eindruck kommt auch daher, weil sich in "/home/.../x/" drei Directories befinden (reports,geheim,ops) und zuerst nur die Dir angezeigt wird, die KEIN .htaccess File beinhaltet (reports). Nach dem Besuch von "/home/.../x/ops" wird dann auch 'ops' angezeigt, jedoch nie die Directory 'geheim' zu der ich im .htaccess File keine Berechtigung habe. Gibt es eine Moeglichkeit das suchen in Sub-Directories abzustellen. Eine andere URL hat beispielsweise 2000 Dirs und da dauert es noch sehr viel laenger. Danke fuer einen Hinweis Werner Franke Apache/2.0.55 (Unix) mod_ssl/2.0.55 OpenSSL/0.9.8a DAV/2 PHP/4.4.4 mod_jk/1.2.19 mod_perl/2.0.2 Perl/v5.8.8 Inhalt von .htaccess: AuthUserFile /vol/lb_abc/public_html/abc/.users/users AuthGroupFile /vol/lb_abc/public_html/abc/.users/groups AuthName "only for abc Members" AuthType Basic <Limit GET POST PUT> require user user1 user2 wfranke user3 ... </Limit> -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
On Tue, Feb 13, 2007 at 10:31:40AM +0100, Werner Franke wrote:
In der Apache Doku habe ich nur gefunden, das der Apache in den uebergeordneten Directories nach .htaccess Files sucht, aber nicht in Sub-Directories.
.htaccess ist wegen Punkt 1 auf jeden Fall ein Performance-Killer. Vom 2. Fall habe ich bislang noch nicht gehoert.
Mein Eindruck kommt auch daher, weil sich in "/home/.../x/" drei Directories befinden (reports,geheim,ops) und zuerst nur die Dir angezeigt wird, die KEIN .htaccess File beinhaltet (reports).
Nach dem Besuch von "/home/.../x/ops" wird dann auch 'ops' angezeigt, jedoch nie die Directory 'geheim' zu der ich im .htaccess File keine Berechtigung habe.
Und du findest das Gesamtverhalten nicht auch irgendwie logisch? Das du also Resourcen, auf die du nie Zugreifen darfst auch nicht angezeigt bekommst? Ausserdem kann man ja die Folder-Icons anpassen. Moeglicherweise sucht der Apache ja deshalb nach den .htaccess-Dateien. Da dein Browser im ersten Zugriff auf x/ kein Authenticate-Header mitschickt, schlaegt der interne Request fehl - die obige Fehlermeldung wird erzeugt.
Gibt es eine Moeglichkeit das suchen in Sub-Directories abzustellen.
Statt AllowOverride All mal AllowOverride AuthConfig benutzen? Statt Indexe erzeugen zu lassen WebDAV benutzen? Auf jeden Fall ist "IndexOptions ShowForbidden" angesagt. Peter -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
Hi Peter, Danke fuer die Antwort. On Behalf Of Peter Wiersig
In der Apache Doku habe ich nur gefunden, das der Apache in den uebergeordneten Directories nach .htaccess Files sucht, aber nicht in Sub-Directories.
.htaccess ist wegen Punkt 1 auf jeden Fall ein Performance-Killer.
Aber nur fuer den Apache, wie's scheint. Bis vor kurzem hatten wir einen Netscape Server und der hatte diesbezueglich keine solchen Probleme. Momentan habe ich auch keine Idee, wie wir die Verwendung von .htaccess Files anders loesen koennten, da wir die Zugriffsberechtigungen auf die verschiedenen URLs nicht unter Kontrolle haben. Das machen die jeweiligen User.
Vom 2. Fall habe ich bislang noch nicht gehoert.
Wenn Du mit 2. Fall das Suchen in Sub-Directories meinst, dann steht das doch in der Apache Doku. Hab's jetzt gefunden: http://httpd.apache.org/docs/2.0/howto/htaccess.html The first of these is performance. When AllowOverride is set to allow the use of .htaccess files, Apache will look in every directory for .htaccess files. Thus, permitting .htaccess files causes a performance hit, whether or not you actually even use them! Also, the .htaccess file is loaded every time a document is requested.
Nach dem Besuch von "/home/.../x/ops" wird dann auch 'ops' angezeigt, jedoch nie die Directory 'geheim' zu der ich im .htaccess File keine Berechtigung habe.
Und du findest das Gesamtverhalten nicht auch irgendwie logisch? Das du also Resourcen, auf die du nie Zugreifen darfst auch nicht angezeigt bekommst?
Schon. Aber bei vielen Sub-Directories dauert das dann halt recht lange. Darum sollte es zumindest fuer bestimmte Directories abschaltbar sein.
Ausserdem kann man ja die Folder-Icons anpassen. Moeglicherweise sucht der Apache ja deshalb nach den .htaccess-Dateien. Da dein Browser im ersten Zugriff auf x/ kein Authenticate-Header mitschickt, schlaegt der interne Request fehl - die obige Fehlermeldung wird erzeugt.
Gibt es eine Moeglichkeit das suchen in Sub-Directories abzustellen.
Statt AllowOverride All mal AllowOverride AuthConfig benutzen?
Das habe ich zuerst versucht und hat nichts gebracht.
Statt Indexe erzeugen zu lassen WebDAV benutzen?
Hmmm. Sagt mir jetzt nichts. Muss ich mir erst anschauen...
Auf jeden Fall ist "IndexOptions ShowForbidden" angesagt.
Gibt's erst ab Apache 2.2. Hast Du diese Option probiert? Verhindert diese dieses Suchen in den Sub-Directories ? Ich muss den Request, statt den Apache 2.0 die Version 2.2 zu verwenden an eine andere Stelle schicken und moechte da gerne vorher wissen ob das was bringt. Gruss Werner -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
On Fri, Feb 16, 2007 at 10:06:47AM +0100, FRANKE, WERNER (Werner) wrote:
On Behalf Of Peter Wiersig
Vom 2. Fall habe ich bislang noch nicht gehoert.
Wenn Du mit 2. Fall das Suchen in Sub-Directories meinst, dann steht das doch in der Apache Doku. Hab's jetzt gefunden: http://httpd.apache.org/docs/2.0/howto/htaccess.html The first of these is performance. When AllowOverride is set to allow the use of .htaccess files, Apache will look in every directory for .htaccess files. Thus, permitting .htaccess files causes a performance hit, whether or not you actually even use them! Also, the .htaccess file is loaded every time a document is requested.
Der Haupt-Performancekiller im Zusammenhang mit .htaccess Dateien ist das nicht auffinden ebendieser und dadurch bedingt das nichtspeichernkoennens dieser Information. Wenn eine .htaccess-Datei vorhanden ist wird der fortwaehrende Zugriff ja gut durch das OS gecached - wenn da nichts ist muss immer nachgesehen werden. Fuer dieses spezielle Performanceproblem ist allerdings eher die Sub-Request-Geschichte anzusehen.
Ausserdem kann man ja die Folder-Icons anpassen. Moeglicherweise sucht der Apache ja deshalb nach den .htaccess-Dateien. Da dein Browser im ersten Zugriff auf x/ kein Authenticate-Header mitschickt, schlaegt der interne Request fehl - die obige Fehlermeldung wird erzeugt.
Gibt es eine Moeglichkeit das suchen in Sub-Directories abzustellen.
Statt AllowOverride All mal AllowOverride AuthConfig benutzen? Das habe ich zuerst versucht und hat nichts gebracht.
Ich hab das noch stehen lassen. Mit der spaeteren Lektuere der Direktiven-Dokumentation war dieser Punkt hinfaellig.
Auf jeden Fall ist "IndexOptions ShowForbidden" angesagt. Gibt's erst ab Apache 2.2.
Hast Du diese Option probiert? Verhindert diese dieses Suchen in den Sub-Directories ?
Nein, ich habe das nicht selbst ausprobiert. Peter -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um eine Liste aller verfuegbaren Kommandos zu bekommen, schicken Sie eine Mail an: opensuse-de+help@opensuse.org
participants (3)
-
FRANKE, WERNER (Werner)
-
Peter Wiersig
-
Werner Franke