Visualizzazione status code

giovedì 03 giugno 2010 - 15.58

mauri1961 Profilo | Senior Member

Sembrerà molto banale ma lavoro da poco con asp.net e di html ne so ancora meno.... Come faccio a visualizzare su una pagina htm il codice di errore di una pagina (aspx) ? Es. 403,404 eccc.

Grazie, Maurizio

Pinky Profilo | Junior Member

La tua richiesta HTTP giunge al Web Server (Apache, IIS, ...) che si occupa di gestirla in modo tale da ritornare una risposta HTTP.
Tipicamente in base all'estensione del file richiesto vengono letti ed inviati dei file senza essere elaborati (pagine statiche, css, immagini) oppure vengono attivati dei processi che elaborano la richiesta e "creano" la risposta (pagine dinamiche, servizi).
Ogni risposta HTTP ha sempre uno STATUS CODE (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html).
Un HTTP status code 404 significa che il file non è stato trovato.
Altri (50x) che non si hanno permessi per accedere a quelle risorse/file.
Altri (30x) che l'elaborazione di quelle risorse ha sollevato un errore.

Il Web Server ha impostate delle regole "generali" per rispondere a tali eventi. In pratica esistono già delle pagine HTML "preconfezionate" da inviare in risposta al browser che ha fatto la richiesta. Tali regole/impostazioni sono sonfigurabili (anche per singolo sito), tantoché si parla di pagina di errore personalizzata; ovvero si imposta il Web Server per ritornare questa specifica pagina (da noi creata) in risposta all'evento; si possono implementare pagine customizzate per i soli status code voluti, tipicamente il 404.

In ASP.NET esiste una sezione specifica del web.config per indicare ad IIS cosa fare in caso di errore. Si trova nella sezione system.web:
<customErrors mode="RemoteOnly" defaultRedirect="/Maintenance.aspx" >
<error statusCode="404" redirect="/NotFound.aspx" />
</customErrors>

Quindi in caso di pagina non trovata (404) si rimanda alla pagina NotFound.aspx.

ciao
Alessandro
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5