2012-07-26 17 views
5

Desidero restituire un codice HTTP per un utente che preme HTTP su un dominio HTTPS o viceversa. Quale HTTP Code sarebbe adatto per questo?Quale codice HTTP restituire per il protocollo errato

Non voglio reindirizzare al protocollo corretto in quanto promuoverà collegamenti non validi/non sicuri e la configurazione del mio server non mi consente di disabilitare il protocollo sui domini.

sto pensando 400, 403, 406 o 500.

+0

http://stackoverflow.com/questions/2554778/what-is- the-proper-http-response-to-send-per-request-that-require-ssl ha alcuni suggerimenti – Egor

risposta

4

E pensare che stai cercando: 403 Forbidden (almeno questo opterei per)

Il server capito la richiesta , ma si rifiuta di soddisfarlo. L'autorizzazione non sarà d'aiuto e la richiesta NON DEVE essere ripetuta. Se il metodo di richiesta non era HEAD e il server desidera rendere pubblico perché la richiesta non è stata soddisfatta, DOVREBBE descrivere il motivo per il rifiuto nell'entità. Se il server non vuole fare tali informazioni a disposizione del cliente, il codice di stato 404 (non trovato ) può essere usato al posto

+1

+1. Questo ha senso. Per inciso, Microsoft è d'accordo con la tua risposta, e ha persino scelto di "estendere" erroneamente il codice di stato 403 a * [403.4 - SSL Required] (http://en.wikipedia.org/wiki/HTTP_403) * per IIS. – ArjunShankar

+0

@Cristi Lo useresti sia per HTTP su HTTPS che HTTPS solo su HTTP? –

+0

Penso di sì, perché il server ha una buona ragione per non soddisfare la richiesta. Inoltre dice al cliente di non ripetere ... – Learner

Problemi correlati