Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 15179|Risposta: 0

[ASP.NET] Asp.Net Configurazione di 404 pagine

[Copiato link]
Pubblicato su 24/12/2015 17:39:45 | | | |


Cos'è un errore 404?
L'errore HTTP 404 significa che la pagina web a cui il link punta non esiste, cioè l'URL della pagina originale non esiste, cosa che spesso accade ed è difficile da evitare, ad esempio: cambiamenti nelle regole di generazione degli URL della pagina web, rinominazione o spostamento del file della pagina, errori di ortografia del link importato, ecc., che rendono l'indirizzo URL originale inaccessibile; Quando un server web riceve una richiesta simile, restituisce un codice di stato 404 che informa il browser che la risorsa da richiedere non esiste. Tuttavia, la pagina di errore predefinita 404 per i server web, sia Apache che IIS, è molto rudimentale, noiosa e poco user-friendly, e non fornisce agli utenti le informazioni necessarie per ottenere ulteriori indizi, il che senza dubbio causerà un rotto di utilizzo.
Il ruolo delle 404 pagine
I motori di ricerca utilizzano codici di stato HTTP per identificare lo stato di una pagina web. Quando un motore di ricerca riceve un link errato, il sito dovrebbe restituire un codice di stato 404 che ordina al motore di ricerca di abbandonare l'indicizzazione del link. Se viene restituito un codice di stato 200 o 302, i motori di ricerca indicizzano il link, risultando in un gran numero di link diversi che puntano allo stesso contenuto web. Di conseguenza, i motori di ricerca si fidano molto meno del sito.
Come verificare che una pagina 404 personalizzata restituisca un codice di stato "404"
Dopo aver configurato la pagina di errore personalizzata 404, assicurati di verificare se restituisce correttamente lo stato "404". Il metodo di controllo è anche piuttosto semplice: inserisci l'URL di un sito web che non esiste nella pagina web, controlla il ritorno dell'intestazione HTTP e assicurati che restituisca il codice di stato "404".
404 pagine è la cosa giusta da fare
1. Come configurare la pagina 404 del server Apache
Aggiungi il codice al file .htaccess: ErrorDocument 404/Error.html
Crea una pagina HTML404 semplice per la denominazione Error.html
Inserisci Error.html nella directory root del tuo sito web.
2. Imposta la pagina di errore 404 sotto IIS/ASP.net
Per prima cosa, modifica le impostazioni della directory radice dell'applicazione, apri la modifica del file "web.config" e aggiungi il seguente contenuto:

<configuration>
<system.web>
<customErrors mode="On" defaultRedirect="error.asp">
<errore statusCode="404" redirect="notfound.asp" />
</customErrors>
</system.web>
</configuration>

In questo esempio, error.asp è la pagina 404 predefinita e notfound.asp è una pagina 404 personalizzata.
Poi, aggiungi la pagina personalizzata 404 "notfound.asp":

<%
Risposta.Stato = "404 Non Trovato"
%>

Questo garantisce che IIS restituisca correttamente il codice di stato "404"
Promemoria amichevole
1. Assicurati di non indirizzare l'errore 404 direttamente alla homepage del sito web, il che potrebbe impedire l'inclusione della tua homepage;
2. /Error.html Si prega di non portare il nome di dominio principale davanti (ortografia errata: yzznl.cn/error.html, scrittura corretta :/error.html), altrimenti il codice di stato restituito è codice di stato 302 o 200.
Quando cerchi come personalizzare una pagina di errore 404 dal asp.net sito web, la maggior parte degli articoli ti consiglia di andare su web.config, trovare system.web e configurare quanto segue.

Copia codice Il codice è il seguente:

<customErrors mode="On" errore statusCode="404" redirect="/404.htm" >
</customErrors>


Infatti, dopo aver fatto questo, non otterrai le informazioni di intestazione della pagina web 404 non trovate, ma le informazioni di intestazione del reindirizzamento temporaneo 302. Puoi usare lo strumento Check Headers Tool per controllare i codici di stato HTTP.

Quindi, come configurare correttamente pagine web personalizzate con errore 404 per asp.net sito web?

Inizia creando una pagina 404.aspx, poi configurala in customeErrors sotto il file web.config come segue:
customErrors redirectMode="ResponseRewrite"
errore statusCode="404" redirect="~/404.aspx"/
/customErrors

RedirectMode ha due proprietà.
ResponseRedirect si riferisce al reindirizzamento di un utente a quella pagina di errore, e l'URL originale viene cambiato con quello di quella pagina di errore.
ResponseRewrite si riferisce al dirigere l'utente alla pagina di errore senza modificare l'URL originale nel browser.

Poi, nel file 404.aspx.cs, aggiungi il seguente codice per l'evento Page_Load:
Copia codice Il codice è il seguente:

Protected void Page_Load(object sender, EventArgs e)
{
Response.Status = "404 Non Trovato";
}





Precedente:Captcha della pagina ASP vs. MVC
Prossimo:c# SmtpClient invia il codice sorgente dell'email
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com