MudGuard: 405 Method Not Allowed

Beitrag lesen

Hi,

Bin gerade dabei in meine Chatsoftware einen FileServer einzubauen.

Chat per http?  Das ist Protokollvergewaltigung. Wofür gibt es eigentlich IRC?

Sollte nun eine zwar existente Datei abgerufen werden, die aber eine unbekannte Dateiendung hat sollte der Server den Statuscode "405 Method Not Allowed" senden.

Warum?
Method not allowed ist für was anderes vorgesehen.
Z.B. wenn ein POST auf eine statische HTML-Seite losgelassen wird.

403 Forbidden erscheint mir wesentlich besser geeignet

Zitat aus RFC 2616 (http 1.1 - siehe http://www.ietf.org/rfc/rfc2616.txt):

10.4.4 403 Forbidden

The server understood the request, but is refusing to fulfill it.
   Authorization will not help and the request SHOULD NOT be repeated.
   If the request method was not HEAD and the server wishes to make
   public why the request has not been fulfilled, it SHOULD describe the
   reason for the refusal in the entity.  If the server does not wish to
   make this information available to the client, the status code 404
   (Not Found) can be used instead.

Dies tut er, doch kein Browser scheint damit etwas anfangen zu können. Der IE zB zeigt weiß und Opera ist der Meinung keine Verbindung zum Server aufbauen zu können.

Ist der header der Response korrekt aufgebaut?
Ist ein allow-Field vorhanden?

Zitat aus RFC 2616:
10.4.6 405 Method Not Allowed

The method specified in the Request-Line is not allowed for the
   resource identified by the Request-URI. The response MUST include an
   Allow header containing a list of valid methods for the requested
   resource.

Ist es normal, daß die Browser teilweise gar nichts mit den Statuscodes anfangen können, sondern alle nur die standart 404, 200, usw. verstehen?

Standard hat nichts mit Stand-Art (Würschtelbude, Glühweinstand, ...) zu tun.

Wenn die Fehlermeldungen KORREKT gesendet werden, kommen die Browser eigentlich damit zurecht.
cu,
Andreas

--
Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.