Apache-Optionen -Indexes Konfiguration nicht funktioniert
-
22-09-2019 - |
Frage
Ich muss Stopp Verzeichnis der Bilder Verzeichnisliste auf einer Website. Ich Konfiguration cookieless Domain für Bilder und Javascripts auf einer Website. Ich habe die CNAME Konfiguration vorgenommen und unter virtuellen Hosts Konfiguration in httpd.conf-Datei hinzugefügt. Aber, wenn ich diese cookieless Domain direkt zugreifen, die Auflistung dessen das gesamte Verzeichnis Inhalt. wie dieses Problem zu lösen?
<VirtualHost ipaddr:80> ServerAdmin webmaster@site.com ServerName imgs.site.com ServerAlias www.imgs.site.com DocumentRoot /usr/tomcat/webapps/site/images <Directory /usr/tomcat/webapps/site/images> Options -Indexes FollowSymLinks AllowOverride none </Directory> CustomLog logs/imgs.site.com_access_log "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" ErrorLog logs/imgs.site.com_error_log </VirtualHost> <VirtualHost ipaddr:80> ServerAdmin webmaster@site.com ServerName imgs.site.com ServerAlias www.imgs.site.com imgs.site.net DocumentRoot /usr/tomcat/webapps/site/images <Directory /usr/tomcat/webapps/site/images> Options -Indexes FollowSymLinks AllowOverride none </Directory> CustomLog logs/imgs.site.com_access_log "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\"" ErrorLog logs/imgs.site.com_error_log </VirtualHost>
Lösung
Eine schnelle Abhilfe ist eine index.html
Datei in das Verzeichnis mit beliebigem Inhalt zu setzen. Indizierung wird der Inhalt dieser Datei anstelle des Verzeichnisses anzuzeigen auflistet.
Andere Tipps
ich denke, dass Pfad in Directory
Richtlinie DocumentRoot
angehängt wird, so dass man eigentlich Apache nicht zu indizieren /usr/tomcat/webapps/site/images/usr/tomcat/webapps/site/images
bestellen. Versuchen Sie, die folgende Konfiguration statt:
DocumentRoot /usr/tomcat/webapps/site
<Directory ~ "/.*/">
Options -Indexes
</Directory>
Dies sollte Verzeichnis Indizierung in allen Ordnern unter /usr/tomcat/webapps/site
, zB deaktivieren. /usr/tomcat/webapps/site/images/
, /usr/tomcat/webapps/site/fubar/
und so weiter.
Options -Indexes FollowSymLinks
Von der Apache 2.0 und Apache 2.2 docs :
Achtung:
MischenOptions
mit + oder -. Mit denen ohne ist nicht gültig Syntax und ist wahrscheinlich unerwartete Ergebnisse verursachen
In Apache 2.4 dies wird ...
... während des Serverstarts von der Syntaxprüfung mit einem Abbruch abgelehnt.
Also, Sie brauchen im Grunde eine +
vor FollowSymLinks
(oder das -Indexes
Argument sogar komplett löschen, wenn Sie möchten, Überschreibung alle zuvor definierten Optionen ). Zum Beispiel:
Options -Indexes +FollowSymLinks