Webserver -Verzeichnis -Index

Wenn ein Http Kunde (im Allgemeinen a Webbrowser) Anfragen a URL Dies zeigt auf eine Verzeichnisstruktur anstelle einer tatsächlichen Webseite innerhalb der Verzeichnisstruktur, die Webserver wird im Allgemeinen eine Standardseite bedienen, die häufig als Haupt- oder Indexseite bezeichnet wird.
Ein gemeinsamer Dateiname für eine solche Seite ist index.html
Aber die meisten modernen HTTP -Server bieten eine konfigurierbare Liste von Dateinamen, die der Server als Index verwenden kann. Wenn ein Server für die Unterstützung konfiguriert ist serverseitiges SkriptingDie Liste enthält normalerweise Einträge, die dynamischen Inhalten als Indexseite verwendet werden können (z. index.cgi
, Index.pl
, index.php
, index.shtml
, index.jsp
, default.asp
) Auch wenn es möglicherweise angemessener sein kann, die HTML -Ausgabe noch anzugeben (Ausgang (index.html.php
oder index.html.aspx
), wie dies nicht als selbstverständlich angesehen werden sollte. Ein Beispiel ist das beliebte Open Source Webserver Apache, wo die Liste der Dateinamen von der gesteuert wird DirectoryIndex
[1] Anweisung in der Hauptserver -Konfigurationsdatei oder in der Konfigurationsdatei für dieses Verzeichnis. Es ist möglich, überhaupt keine Dateierweiterungen zu verwenden und die Inhaltszustellungsmethoden neutral zu machen, und den Server so festlegen, dass sie automatisch die beste Datei durch auswählen Inhaltsverhandlung.
Wenn der Server keine Datei mit einer der in seiner Konfiguration aufgeführten Namen finden kann, kann er entweder einen Fehler zurückgeben (normalerweise 403 Indexauflistung verboten oder 404 Nicht gefunden) oder generieren Sie eine eigene Indexseite, auf der die Dateien im Verzeichnis aufgelistet sind. Normalerweise diese Option, oft benannt Autoindex
, ist auch konfigurierbar.[2]
Geschichte
Ein Schema, bei dem Webserver eine Standarddatei auf der Basis von Pro-Subdirectory bedient NCSA HTTPD 0,3beta (22. April 1993),[3] welche Standardeinstellungen zu dienen sollen index.html
Datei im Verzeichnis.[3][4] Dieses Schema wurde dann von übernommen von CERN HTTPD Seit mindestens 2.17beta (5. April 1994), deren Ausfall unterstützt wird Willkommen.html
und Willkommen.html
Zusätzlich zum NCSA-Originat index.html
.[5]
Spätere Webserver unterstützen dieses Standarddateischema in der Regel in der einen oder anderen Form. Dies ist normalerweise konfigurierbar mit index.html
Als einer der Standarddateinamen.[6][7][8]
Implementierung
In einigen Fällen die Startseite einer Website kann ein Menü von sein Sprachoptionen Für große Standorte, die verwenden Geotargeting. Es ist auch möglich, diesen Schritt beispielsweise durch Verwendung zu vermeiden Inhaltsverhandlung.
In Fällen, in denen kein bekannt ist Index.*
Die Datei gibt es in einem bestimmten Verzeichnis. Der Webserver kann so konfiguriert sein, dass er stattdessen eine automatisch generierte Auflistung der Dateien im Verzeichnis bereitstellt. Mit dem Apache -Webserver wird dieses Verhalten beispielsweise vom Modul mod_autoIndex bereitgestellt[9] und kontrolliert von der Optionen +Indizes
Richtlinie[10] auf dem Webserver Konfigurationsdateien. Diese automatisiert Verzeichnislisten sind manchmal ein Sicherheitsrisiko, da sie sensible Dateien aufzählen, die möglicherweise nicht für den öffentlichen Zugriff bestimmt sind, in einem Prozess, der als Verzeichnis -Indexierungsangriff bezeichnet wird.[11] Eine solche Sicherheitsmehlkonfiguration[12] kann auch bei anderen Angriffen helfen, z. B. einen Weg oder Verzeichnistraversalangriff.[13]
Aufführungen
Bei dem Zugriff auf ein Verzeichnis können die verschiedenen verfügbaren Indexmethoden auch unterschiedliche Auswirkungen auf die Verwendung von Betriebssystemressourcen haben (Ressourcen (RAM, CPU -Zeitusw.) und damit auf Webserver -Leistungen.
Ausgehen von am schnellsten zu langsamste Methode, hier ist es die Liste:
- Verwenden einer statischen Indexdatei, z.
index.html
, etc.; - Verwenden einer Webserverfunktion normalerweise benannt Autoindex (Wenn keine Indexdatei vorliegt) Die Webserver -Verzeichnisauflistung mithilfe seines internen Moduls automatisch zu lassen;
- Verwenden einer interpretierten Datei, die vom internen Programm Interpreter des Webservers gelesen wurde, z. B.::
index.php
; - Mit einem ausführbaren CGI -Programm und einem kompilierten Programm, z. B.::
index.cgi
.
Verweise
- ^ "mod_dir - Apache HTTP -Server". httpd.apache.org. Abgerufen 2014-05-30.
- ^ ASF Infrabot (2019-05-22). "Verzeichnislisten". Apache Foundation: HTTPD Server -Projekt. Abgerufen 2021-11-16.
- ^ a b "Www-talk apr-jun 1993: NCSA HTTPD Version 0.3". 1997.Webhistory.org.
- ^ "NCSA HTTPD DirectoryIndex". 31. Januar 2009. archiviert von das Original Am 31. Januar 2009.
- ^ "Veränderungsgeschichte von W3C HTTPD". 5. Juni 1997. archiviert von das Original Am 5. Juni 1997.
- ^ "mod_dir - Apache HTTP Server Version 2.4 § DirectoryIndex -Anweisung". httpd.apache.org. Archiviert vom Original am 2020-11-12. Abgerufen 2021-01-13.
- ^ "Nginx docs | statische Inhalte servieren". docs.nginx.com. Archiviert vom Original am 2020-11-11. Abgerufen 2021-01-13.
- ^ "Standarddokument <DanaultDocument> | Microsoft Docs". docs.microsoft.com. Archiviert vom Original am 2020-12-08. Abgerufen 2021-01-13.
- ^ "Mod_autoIndex - Apache HTTP Server Version 2.4". httpd.apache.org. Abgerufen 2021-01-13.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ "Core - Apache HTTP Server Version 2.4 § Optionsanweisung". httpd.apache.org. Abgerufen 2021-01-13.
{{}}
: CS1 Wartung: URL-Status (Link) - ^ "IBM docs". IBM. 2021-03-08. Abgerufen 2021-05-07.
- ^ "A6: 2017-Security-Missverständnis". Owasp. Abgerufen 2021-05-07.
- ^ "Pfad Traversal". Owasp. Abgerufen 2021-05-07.