2012-07-26 5 views
5

Ich möchte einen HTTP-Code für einen Benutzer zurückgeben, der HTTP in einer HTTPS-Domäne ansteuert oder umgekehrt. Welche HTTP Code wäre dafür geeignet?Welcher HTTP-Code für ein falsches Protokoll zurückgegeben werden soll

Ich möchte nicht zum richtigen Protokoll umleiten, da es schlechte/unsichere Verbindungen fördern würde und mein Server-Setup erlaubt mir nicht, das Protokoll auf den Domänen zu deaktivieren.

Ich denke, 400, 403, 406 oder 500.

+0

http://stackoverflow.com/questions/2554778/what-is- verwendet werden die-richtige-HTTP-Antwort-zu-senden-für-Anfragen-die-erfordern-SSL hat einige Vorschläge – Egor

Antwort

4

Es denken Sie suchen: 403 Forbidden (zumindest diese eine I für sich entscheiden würde)

Der Server die Anforderung verstanden , aber weigert sich, es zu erfüllen. Autorisierung wird nicht helfen und die Anfrage sollte nicht wiederholt werden. Wenn die Anfrage-Methode nicht HEAD war und der Server öffentlich machen möchte, warum die Anfrage nicht erfüllt wurde, SOLLTE der Grund für die Ablehnung in der Entität beschrieben werden. Wenn der Server nicht wünscht diese Informationen für den Client verfügbar zu machen, der Statuscode 404 (Nicht gefunden) anstelle

+1

+1. Das macht Sinn. Übrigens stimmt Microsoft Ihrer Antwort zu und entschied sogar, den 403-Statuscode (*) fälschlicherweise auf * [403.4 - SSL Required] (http://en.wikipedia.org/wiki/HTTP_403) * für IIS zu erweitern. – ArjunShankar

+0

@Cristi Würden Sie dies sowohl für HTTP auf HTTPS-only als auch für HTTPS on HTTP-only verwenden? –

+0

Ich denke ja, weil der Server einen guten Grund hat, warum er die Anfrage nicht erfüllt. Außerdem sagt es dem Kunden, nicht zu wiederholen ... – Learner

Verwandte Themen