Lawrence si chiede perchè ASP.NET non invii il codice 404 come risposta (come da mio post di qualche giorno fa).
Il problema di fondo è dovuto al fatto che se viene specificata una pagina per l'errore personalizzato, il worker process di ASP.NET comunica ad IIS un codice 301 per rimandarlo alla nuova pagina (notare il cambio di URL quando è specificata una pagina personalizzata). E' all'interno della pagina, dato che è un errore personalizzato, che deve essere specificato il codice HTTP di risposta. E come già detto, non è così automatico che quando viene invocato l'handler per una risorsa che non esiste, il risultato sia un codice 404. Tutti gli articoli su questo sito, ad esempio, in passato avevano estensione .asp e per non perdere le migliaia di link c'è un piccolo script che aggiunge una x (più o meno) in coda. Questo è un tipico esempio di un handler che internamente gestisce una risorsa non trovata, ma ai fini dell'HTTP restituisce un codice 301 (o 302) anzichè 404.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- Perché é importante insegnare ai bambini la programmazione: cosa possiamo fare noi?, l'11 dicembre 2013 alle 16:03
- modern.IE: sfatiamo qualche mito su IE10, il 3 maggio 2013 alle 17:46
- Installare gli emulatori per iPhone e iPad in Visual Studio 2012, il 12 ottobre 2012 alle 15:26
- L'importanza di applicare un SALT alle password: il caso di Linkedin, il 7 giugno 2012 alle 15:05
- Silverlight non morirà presto, il 3 novembre 2010 alle 19:38
- Il ruolo di Silverlight con HTML 5, il 2 settembre 2010 alle 09:17