HTTP-Statusmeldungen
Inhalt
Klasse 1xx: Informational
Klasse 2xx: Successfull
Klasse 3xx: Redirection
Klasse 4xx: Client error
Klasse 5xx: Server error
In HTTP sind für Statuscodes spezielle Kennzahlen vereinbart. Diese Statuscodes werden von einem Server in jeden Header einer HTTP-Antwort eingefügt. Kann oder darf die angeforderte Ressource nicht direkt übermittelt werden, wird außerdem eine automatisch generierte HTML-Seite übermittelt, die den Fehlercode und evt. weitere Hinweise enthält.
Bei einigen Statusmeldungen finden Sie mit "Microsoft IIS:" gekennzeichnete Anmerkungen von Microsoft zu den Produkten Microsoft IIS 4 und 5.
Weiters enthält diese Übersicht die zusätzlichen Microsoft IIS-Statuscodes.
Klasse 1xx: INFORMATIONAL
Diese Klasse ist für provisorische Antworten reserviert.
100 - Continue
Der Server hat die Anfrage korrekt erhalten und wartet auf weitere Anweisungen des Clients, um die Anfrage ausführen zu können. (Wird derzeit noch nicht verwendet)
101 - Switching Protocols
Der Server hat die Anfrage korrekt erhalten und wird gemäß der Anweisung des Clients zum Ausführen der Anfrage das Übertragungsprotokoll nach Senden dieser Statusmeldung ändern. (Wird derzeit noch nicht verwendet)
Klasse 2xx: SUCCESSFULL
Die 2xx-Klasse zeigt an, dass die Anfrage des Clients vom Server empfangen, verstanden und akzeptiert wurde.
200 - OK
Die Anfrage erreichte korrekt den Server und wurde korrekt ausgeführt.
201 - Created
Die Anfrage erreichte korrekt den Server und die angeforderte Ressource wurde neu erzeugt. Das ist der Fall, wenn die Anfrage des Browsers an den Server mit einer der HTTP-Übertragungsmethoden post oder put erfolgte und eine Anweisung zum Erstellen des entsprechenden Objekts enthielt.
202 - Accepted
Der Server hat die Anfrage des Browsers akzeptiert, liefert aber keine Daten als Antwort. Der Server schreibt die Daten statt sie zu senden in eine Datei und teilt in der Meldung mit, wo die Daten später zu finden sein werden. Diese Meldung sagt nichts darüber aus, ob der Server die Anfrage erfolgreich behandeln kann. Er hat sie einfach nur akzeptiert und die Abarbeitung auf einen späteren Zeitpunkt verschoben.
203 - Non-Authoritative Information
Dieser Statuscode sollte von einem Server an Stelle von Code 200 zurückgegeben werden, wenn es sich nicht um den Original-Server handelt, sondern beispielsweise um einen Proxy-Server. Der Web-Browser erfährt auf diese Weise, dass die Daten erfolgreich gesendet werden konnten, aber nicht vom Original-Server kommen und daher keine Garantie auf deren Aktualität besteht.
204 - No Content
Der Server hat die Anfrage erhalten, sendet jedoch keine Daten zurück. Gut verwendbar ist dieser Statuscode bei Verwendung in CGI-Scripts, die zwar etwas auf dem Server erledigen, aber keinen neuen HTML-Code an den aufrufenden Browser senden wollen. Aus Sicht des Anwenders bleibt der alte Bildschirminhalt bestehen.
205 - Reset Content
Die Anfrage erreichte korrekt den Server und wurde verarbeitet. Mit dieser Antwort wird der anfragende Client aufgefordert, die Dokumentansicht zu löschen, die die Anfrage nach dieser Ressource auslöste (z.B. eine Eingabe in einem Formularfeld).
206 - Partial Content
Die GET-Anfrage enthielt im HTTP-Header die Zeile "range", der den Server auffordert, nur einen bestimmten Bereich der angeforderten Ressource zu übermitteln. Diese Anfrage erreichte korrekt den Server und wurde verarbeitet. Die angeforderten Daten werden in mehreren Portionen versendet (das hat aber nichts mit TCP/IP-Paketen zu tun, sondern passiert auf HTTP-Protokollebene). Mit Angaben zu content-length (z.B.: 1024) und content-range (z.B.: Bytes 0-1023/1024) wird angegeben, wie viele Bytes von dem angeforderten Inhalt geliefert werden, und welcher Teil der Gesamtdaten.
Klasse 3xx: REDIRECTION
Die 3xx-Klasse zeigt an, dass die Anfrage zwar korrekt empfangen wurde, der Benutzer jedoch Änderungen an der Anfrage zur Ressource machen sollte.
300 - Multiple Choices
Die angeforderten Daten sind unter mehreren verschiedenen URIs vorhanden (Mirror). Anstelle der Daten werden die verfügbaren URIs als Liste übertragen. Der Web-Browser kann den Anwender anschließend in einem Dialog einen URI auswählen lassen.
301 - Moved Permanently
Die angeforderten Daten befinden sich nicht mehr unter dem URI, sie wurden dauerhaft auf eine andere Adresse verschoben. In der Statusmeldung wird angegeben, unter welchem URI sich die Daten jetzt befinden. Ein Web-Browser, der diese Antwort vom Server erhält, kann beispielsweise gleich die neue Adresse anfordern.
302 - Moved Temporarily
Die angeforderten Daten wurden vorübergehend zu einem anderen URI verschoben. In der Statusmeldung wird angegeben, unter welcher Adresse sich die Daten derzeit befinden. Ein Web-Browser, der diese Antwort erhält, kann beispielsweise gleich die temporär gültige Adresse anfordern.
303 - See Other
Die angeforderten Daten sind unter einem angegebenen URI verfügbar und sollte von dort mit Hilfe der get-Methode angefordert werden. Dieser Statuscode ist für CGI-Scripts gedacht, die mit der post-Methode aufgerufen wurden und den Browser auf eine andere Ressource lenken wollen, die mit der get-Methode angefordert werden soll.
304 - Not Modified
Die angeforderten Daten haben sich seit dem angegebenen Zeitpunkt nicht geändert und werden deshalb nicht gesendet. Der Code 304 wird verursacht durch Web-Browser, die aufgrund ihrer Cache-Einstellungen Daten erst wieder nach einer bestimmten Zeit vom Original-Server laden. Davor fragen sie nur mit dem Zeitpunkt, zu dem die Daten zuletzt geladen wurden, an, ob die Daten auf dem Server seitdem geändert wurden.
305 - Use Proxy
Die angeforderte Ressource kann nur über einen Proxy versendet werden, der explizit in der Antwort im Feld "location" angegeben ist.
306 - Reserved
(Wird derzeit nicht verwendet)
307 - Temporary Redirect
Wie der Statuscode 302 (Moved Temporarily). Gedacht für Fehlreaktionen einiger Browser auf den Code 302.
Klasse 4xx: CLIENT ERROR
Die 4xx-Klasse steht für alle Meldungen über Fehler, die wahrscheinlich durch den anfordernden Client ausgelöst werden.
400 - Bad Request
Die Anfrage enthält Syntaxfehler. Der Server kann die Anfrage deshalb nicht bearbeiten. Das kann beispielsweise vorkommen, wenn die Anfrage dadurch zustande kam, dass ein Anwender versuchte, einen URI händisch in die Adresszeile des Browsers einzugeben und dabei ungültige Zeichen verwendete.
401 - Unauthorized
Die angeforderten Daten sind zugangsgeschützt. Der Server kann die Daten nur senden, wenn eine gültige Zugangskennung, bestehend aus Benutzername und Passwort, bei der Anfrage mit gesendet wird. Das passiert in der Praxis immer dann, wenn eine Adresse aufgerufen wird, die z.B. durch htaccess zugangsgeschützt ist. Der Web-Browser zeigt dann, nachdem er diesen Statuscode erhalten hat, einen Dialog zum Eingeben von Benutzername und Kennwort an. Mit den eingegebenen Daten startet er dann eine neue Anfrage an den Server.
Zusätzliche Microsoft IIS-Statuscodes:
401.1 - Logon failed
Anmeldung fehlgeschlagen
Der Anmeldeversuch ist fehlgeschlagen, vermutlich, weil ein ungültiger Benutzername oder ein ungültiges Kennwort verwendet wurde.
401.2 - Logon failed due to server configuration
Anmeldung aufgrund der Serverkonfiguration fehlgeschlagen
401.3 - Unauthorized due to ACL on resource
Keine Autorisierung, Ressource ist eine ACL zugeordnet
Dieser Code weist auf ein Problem mit NTFS-Berechtigungen hin. Dieser Fehler kann auch dann auftreten, wenn die Berechtigungen der entsprechenden Datei korrekt sind. Der Fehler tritt z. B. dann auf, wenn das Konto "IUSR" keinen Zugriff auf das Verzeichnis "C:\Winnt\System32\Inetsrv" hat.
401.4 - Authorization failed by filter
Keine Autorisierung, da Filter aktiv
401.5 - Authorization failed by ISAPI/CGI application
Autorisierung in ISAPI/CGI-Anwendung fehlgeschlagen
402 - Payment Required
Die angeforderten Daten sind kostenpflichtig. Der Server kann die Daten nur senden, wenn eine Bestätigung der Zahlung für die Daten bei der Anfrage mit gesendet wird. Derzeit wird dies aufgrund fehlender einheitlicher technischer Grundlagen für Micropayment noch nicht verwendet.
403 - Forbidden
Die angeforderten Daten sind zugangsgeschützt. Die angegebenen Daten, mit denen der Zugang erlaubt werden soll, sind ungültig. Das kann z.B. vorkommen, wenn zuvor der Statuscode 401 zurückgeliefert worden war und der Browser nun die nächste Anfrage mit den Zugangsdaten gestartet hat, die er vom Anwender im Dialog abgefragt hat, und diese Daten aber ungültig sind. Manche Web-Browser wiederholen den Dialog zum Eingeben der Zugangsdaten dann noch zweimal, und nach der dritten Falscheingabe wird dem Anwender die Fehlermeldung "Forbidden" ausgegeben.
Zusätzliche Microsoft IIS-Statuscodes:
403.1 - Execute access forbidden
Ausführen verweigert
Im Folgenden sind zwei häufige Ursachen für diese Fehlermeldung aufgeführt:
- Die Berechtigungen zum Ausführen von Dateien reichen nicht aus. Beispielsweise tritt dieser Fehler auf, wenn Sie versuchen, eine ASP-Seite in einem Verzeichnis aufzurufen, dessen Berechtigungen auf Keine gesetzt sind, oder wenn ein CGI-Skript (CGI = Common Gateway Interface) in einem Verzeichnis mit den Berechtigungen Nur Skripts ausgeführt werden soll. Um die Berechtigungen zum Ausführen zu ändern, klicken Sie mit der rechten Maustaste in der Microsoft Management Console (MMC) auf das Verzeichnis, klicken Sie dann auf Eigenschaften, dann auf die Registerkarte Verzeichnis, und vergewissern Sie sich, dass die Einstellung Ausführberechtigungen dem Inhalt entspricht, auf den zugegriffen werden soll.
- Die Skriptzuordnung für den Dateityp, der ausgeführt werden soll, ist nicht so konfiguriert, dass das in der Anforderung verwendete Verb (z. B. GET oder POST) erkannt wird. Um dies zu überprüfen, klicken Sie mit der rechten Maustaste in der MMC auf das Verzeichnis, klicken Sie auf Eigenschaften, dann auf die Registerkarte Verzeichnis und dann auf Konfiguration, und vergewissern Sie sich, dass die Skriptzuordnung für den Dateityp so konfiguriert ist, dass das verwendete Verb erkannt wird.
403.2 - Read access forbidden
Lesezugriff verweigert
Vergewissern Sie sich, dass IIS für das Lesen des Verzeichnisses konfiguriert ist. Falls Sie ein Standarddokument verwenden, stellen Sie sicher, dass es existiert.
403.3 - Write access forbidden
Schreibzugriff verweigert
Vergewissern Sie sich, dass die IIS-Berechtigungen und die NTFS-Berechtigungen so gesetzt sind, dass Schreibzugriff auf das Verzeichnis gestattet ist.
403.4 - SSL required
SSL erforderlich, SSL = Secure Socket Layer
Deaktivieren Sie die Option Sicheren Kanal verlangen, oder verwenden HTTPS anstatt HTTP, um auf die Seite zuzugreifen.
403.5 - SSL 128 required
SSL 128 erforderlich
Deaktivieren Sie die Option 128-Bit-Verschlüsselung erforderlich, oder verwenden Sie zum Anzeigen der Seite einen Browser, der 128-Bit-Verschlüsselung unterstützt.
403.6 - IP address rejected
IP-Adresse abgewiesen
Der Server ist so konfiguriert, dass er der momentan verwendeten IP-Adresse den Zugriff verweigert.
403.7 - Client certificate required
Clientzertifikat erforderlich
Der Server ist so konfiguriert, dass er für die Authentifizierung des Clients ein Zertifikat verlangt, jedoch ist kein gültiges Clientzertifikat installiert.
403.8 - Site access denied
Zugriff auf Site verweigert
Für die Domäne, von der aus versucht wird, auf den Server zuzugreifen, ist eine Zugriffsbeschränkung konfiguriert.
403.9 - Too many users
Zu viele Benutzer
Die Anzahl der Benutzer, die mit dem Server verbunden sind, übersteigt die eingestellte maximale Benutzerzahl.
Hinweis: Microsoft Windows 2000 Professional und Microsoft Windows XP Professional erzwingen in IIS automatisch eine Begrenzung auf 10 Verbindungen. Diese Begrenzung kann nicht aufgehoben werden.
403.10 - Invalid configuration
Ungültige Konfiguration
403.11 - Password change
Kennwortänderung
403.12 - Mapper denied access
Mapper verweigerte Zugriff
Die Seite, auf die zugegriffen werden soll, erfordert ein Clientzertifikat, aber der dem Zertifikat zugeordneten Benutzer-ID wurde der Zugriff auf die Datei verweigert.
403.13 - Client certificate revoked
Clientzertifikat zurückgezogen
403.14 - Directory listing denied
Verzeichnisauflistung verweigert
403.15 - Client Access Licenses exceeded
Anzahl der Clientlizenzen ausgeschöpft
403.16 - Client certificate untrusted or invalid
Clientzertifikat nicht vertrauenswürdig oder ungültig
403.17 - Client certificate has expired or is not yet valid
Clientzertifikat abgelaufen oder noch nicht gültig
404 - Not Found
Der angeforderte URI existiert nicht. Dies ist neben den Statuscodes 200 und 304 einer der häufigsten Fälle in der Praxis. Er tritt immer dann ein, wenn ein Verweis auf eine nicht oder nicht mehr existierende Adresse auf dem Server führt, oder wenn der Anwender versucht hat, eine Adresse auf dem Server durch händisches Eintippen in der Adresszeile des Browsers aufzurufen, und diese Adresse aber nicht existiert.
Microsoft IIS: Dieser Fehler tritt beispielsweise beim Versuch auf, eine Datei aufzurufen, die verschoben oder gelöscht wurde. Er kann außerdem auftreten, wenn versucht wird, auf eine Datei zuzugreifen, deren Dateinamenerweiterung nach der Installation des Dienstprogramms URLScan als unzulässig kategorisiert wurde. In diesem Fall erscheint für die Anforderung in der Protokolldatei der Eintrag "Rejected by URLSCan" (Von URLScan abgewiesen).
405 - Method Not Allowed
Die angegebene Übertragungsmethode ist auf dem Server nicht erlaubt. Die Daten werden deshalb nicht übertragen. Das kann beispielsweise vorkommen, wenn in der Konfiguration des Web-Servers außer der get-Methode keine weitere Methode erlaubt ist, ein HTML-Formular aber einen CGI-Aufruf mit der post-Methode enthält.
406 - Not Acceptable
Die Anfrage ist in dieser Form nicht akzeptabel. Die Daten werden deshalb nicht übertragen.
407 - Proxy Authentication Required
Der anfragende Client ist ein Proxy-Server. Die Daten werden an diesen Server nur übertragen, wenn er sich als gültiger Proxy-Server ausweist. Dieser Statuscode findet derzeit noch keine Verwendung. Damit soll auf die Dauer ein ähnliches Handling wie mit dem Statuscode 401 etabliert werden, jedoch nicht für anfragende Browser, sondern für anfragende Proxy-Server. Auf diese Weise könnte es Web-Anbietern möglich werden, in der Serverkonfiguration unerwünschte Proxy-Server vom Zwischenspeichern der eigenen Daten auszusperren.
408 - Request Timeout
Der Server hat eine erwartete Anfrage nicht innerhalb des dafür festgelegten Maximalzeitraums erhalten. Die Verbindung zum anfragenden Browser wird deshalb abgebaut. Angeforderte Daten werden nicht übertragen.
409 - Conflict
Der Server kann die angeforderten Daten nicht senden, weil ein Konflikt mit einem anderen Prozess aufgetaucht ist. Das kann beispielsweise passieren, wenn ein anderer Prozess eine angeforderte Datei gerade mit einem exklusiven File-Locking (keinerlei Dateizugriff für andere Prozesse erlaubt) versehen hat.
410 - Gone
Die angeforderte Ressource ist nicht mehr länger auf dem Server vorhanden und es ist keine alternative Adresse für die gleiche Ressource bekannt. Dieser Statuscode wird z.B. von Serveradministratoren gewählt, wenn es sich z.B. um eine zeitlich befristete Präsentation handelte.
411 - Length Required
Die Daten werden nicht gesendet. Sie können nur gesendet werden, wenn die Anfrage eine Angabe zu content-length enthält. Der Browser kann versuchen, die Anfrage neu zu formulieren und dabei die Länge der an den Server gesendeten Anfragedaten mit zu übermitteln.
412 - Precondition Failed
Eine oder mehrere Bedingungen, die bei der Anfrage gestellt wurden, treffen nicht zu. Die angeforderten Daten werden deshalb nicht übertragen.
413 - Request Entity Too Large
Der Server verweigert die Bearbeitung der Anfrage, da der Inhalt der Anfrage größer ist, als der Server verarbeiten kann oder will. Der Server kann die Verbindung zum Client beenden, um den Client daran zu hindern, weitere Anfragen zu senden.
414 - Request-URI Too Long
Der Server verweigert die Bearbeitung der Anfrage, da der URI der Anfrage länger ist, als der Server interpretieren kann. Diese seltene Statusmeldung wird verwendet, wenn z.B. ein URL eine überlange Abfrage-Sequenz enthält.
415 - Unsupported Media Type
Der Server verweigert die Bearbeitung der Anfrage, da die angeforderte Ressource nicht in dem Format (Mime-Type) übertragen werden kann, die in der Anfrage gewünscht wird.
416 - Requested Range Not Satisfiable
Die Anfrage enthält Angaben, welcher Byte-Bereich von dem angeforderten URI übertragen werden soll. Sowohl der Anfangswert als auch der Endwert des angegebenen Bereichs liegen außerhalb des verfügbaren Bytebereichs, z.B. wenn ein Bytebereich von 1000 bis 2000 angegeben wird, die Ressource aber nur 500 Byte hat. Die angeforderten Daten werden deshalb nicht übertragen.
417 - Expectation Failed
Die Anfrage enthält im expect-Feld bestimmte Wünsche, die der Server nicht erfüllen kann. Die angeforderten Daten werden deshalb nicht übertragen.
Klasse 5xx: SERVER ERROR
Die 5xx-Klasse steht für vorübergehende Nichtausführbarkeit der Anfrage oder für Fehler, die im Server entstanden bzw. vorhanden sind und eine Ausführung der Anfrage unmöglich macht.
500 - Internal Server Error
Der Server kann die angeforderten Daten nicht senden, weil auf dem Server ein Fehler aufgetreten ist. Beispielsweise konnte das aufgerufene CGI-Script nicht gestartet werden.
Microsoft IIS: Diese Fehlermeldung wird bei einer Vielzahl von serverseitigen Fehlern ausgegeben. Sie finden evtl. in der Ereignisanzeige weitere Informationen über die genaue Ursache dieses Fehlers. Zusätzlich können Sie kurze HTTP-Fehlermeldungen deaktivieren. Sie erhalten dann eine detaillierte Beschreibung des Fehlers.
Zusätzliche Microsoft IIS-Statuscodes:
500.12 - Application restarting
Anwendung wird neu gestartet
Dieser Fehler weist darauf hin, dass versucht wurde, eine ASP-Seite zu laden, während IIS einen Neustart der Anwendung ausführte. Dieser Fehler sollte sich durch das Aktualisieren der Seite beheben lassen. Falls auch beim Aktualisieren der Seite die Fehlermeldung erscheint, ist der Grund dafür möglicherweise eine Antivirus-Software, die gerade die Datei "Global.asa" scannt.
500.13 - Server too busy
Server ist ausgelastet
500.15 - Requests for GLOBAL.ASA not allowed
Anforderung von GLOBAL.ASA nicht zulässig
500-100.ASP - ASP error
ASP-Fehler; dieser Fehler tritt nur bei IIS 5.0 auf
Diese Fehlermeldung wird beim Versuch angezeigt, eine fehlerhafte ASP-Seite zu laden. Deaktivieren Sie die kurzen HTTP-Fehlermeldungen, um genauere Informationen über den Fehler zu erhalten. Standardmäßig ist dieser Fehler nur auf der Standardwebsite aktiviert.
501 - Not Implemented
Der Server kann die Anfrage nicht bearbeiten, da er die Art der Anfrage nicht versteht und die Behandlung der angeforderten Ressource nicht kennt.
502 - Bad Gateway
Der Server (eingesetzt als Gateway oder Proxy) kann die Anfrage nicht bearbeiten, da er bei der Weitergabe der Anfrage an einen höherstehenden Server eine Fehlermeldung erhalten hat.
Microsoft IIS: Diese Fehlermeldung wird z.B. beim Versuch angezeigt, ein CGI-Skript auszuführen, das keine gültigen HTTP-Header zurückliefert.
503 - Service Unavailable
Der Server kann die Anfrage wegen Überlastung nicht bearbeiten. Die angeforderten Daten können deshalb nicht gesendet werden. In der Statusmeldung kann stehen, wann die Anfrage frühestens wieder bearbeitet werden kann. Im Gegensatz zum Statuscode 202 verarbeitet der Server die Daten nicht, sobald er wieder Kapazitäten hat.
504 - Gateway Timeout
Wenn der Server als Gateway oder Proxy arbeitet, gibt er diese Statusmeldung an den Client zurück, wenn er innerhalb einer, vom Serveradministrator definierte, bestimmte Zeit keine Rückantwort von einem Server erhält, der vom Client über ihn angesprochen wurde.
505 - HTTP Version Not Supported
Der Server unterstützt die im HTTP-Header der Anfrage angegebene HTTP-Version nicht. Die angeforderten Daten werden deshalb nicht gesendet.