Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 15179|Odpověď: 0

[ASP.NET] Asp.Net nastavení stránky 404

[Kopírovat odkaz]
Zveřejněno 24.12.2015 17:39:45 | | | |


Co je to chyba 404?
Chyba HTTP 404 znamená, že webová stránka, na kterou odkaz odkazuje, neexistuje, tedy že URL původní webové stránky je neplatná, což se často stává a je obtížné tomu předejít, například: změny v pravidlech generování URL webových stránek, přejmenování nebo přesun souboru webové stránky, chybné pravopisy importovaného odkazu atd., což vede k nepřístupnosti původní URL adresy; Když webový server obdrží podobný požadavek, vrátí stavový kód 404, který prohlížeči sděluje, že požadovaný zdroj neexistuje. Výchozí chybová stránka 404 pro webové servery, ať už jde o Apache nebo IIS, je však velmi základní, nudná a neuživatelsky přívětivá a neposkytuje uživatelům potřebné informace pro získání dalších indicií, což nepochybně způsobí odchod uživatelů.
Role 404 stran
Vyhledávače používají HTTP stavové kódy k identifikaci stavu webové stránky. Když vyhledávač najde nesprávný odkaz, měl by web zobrazit stavový kód 404, který vyhledávači vyzývá, aby odkaz přestal indexovat. Pokud je vrácen stavový kód 200 nebo 302, vyhledávače odkaz indexují, což vede k velkému počtu různých odkazů směřujících na stejný webový obsah. Výsledkem je, že vyhledávače webu důvěřují mnohem méně.
Jak zkontrolovat, že vlastní stránka 404 vrací stavový kód "404"
Po nastavení vlastní chybové stránky 404 se ujistěte, že správně vrací stavový kód "404". Metoda kontroly je také poměrně jednoduchá – zadáte URL webu, který na stránce neexistuje, zkontrolujete návrat HTTP hlavičky a ujistěte se, že vrací stavový kód "404".
404 stran je správná věc, kterou udělat
1. Jak nastavit stránku Apache serveru 404
Přidejte kód do souboru .htaccess: ErrorDocument 404/Error.html
Vytvořte jednoduchý HTML404 pojmenovávací Error.html
Umístěte Error.html do kořenového adresáře vašeho webu.
2. Nastavte chybovou stránku 404 pod IIS/ASP.net
Nejprve upravte nastavení kořenového adresáře aplikace, otevřete editaci souboru "web.config" a přidejte do něj následující obsah:

<configuration>
<system.web>
<customErrors mode="Zapnuto" defaultRedirect="error.asp">
<error statusCode="404" přesměrování="notfound.asp" />
</customErrors>
</system.web>
</configuration>

V tomto příkladu je error.asp výchozí stránka 404 a notfound.asp je přizpůsobená stránka 404.
Poté přidejte vlastní stránku 404 "notfound.asp":

<%
Response.Status = "404 Not Found"
%>

To zajišťuje, že IIS správně vrací stavový kód "404"
Přátelská připomínka
1. Ujistěte se, že chybu 404 nepřesměrujete přímo na domovskou stránku webu, což může způsobit, že vaše domovská stránka nebude zahrnuta;
2. /Error.html Prosím, nepřinášejte před něj hlavní doménové jméno (špatný pravopis: yzznl.cn/error.html, správné psaní :/error.html), jinak vrácený stavový kód je 302 nebo 200.
Když hledáte, jak přizpůsobit stránku chyby 404 na asp.net webu, většina článků doporučuje jít na web.config, najít system.web a nastavit následující.

Zkopírovat kód Kód je následující:

<customErrors mode="Zapnuto" error statusCode="404" přesměrování="/404.htm" >
</customErrors>


Ve skutečnosti po tomto postupu nedostanete informace o hlavičce nenalezené webové stránky 404, ale informace o hlavičce dočasného přesměrování 302. Můžete použít nástroj Check Headers Tool ke kontrole HTTP stavových kódů.

Jak tedy správně nastavit vlastní webové stránky s chybami 404 pro asp.net web?

Začněte vytvořením 404.aspx stránky a poté ji nakonfigurujte ve customeErrors v souboru web.config následovně:
customErrors redirectMode="ResponseRewrite"
error statusCode="404" přesměrování="~/404.aspx"/
/customErrors

RedirectMode má dvě vlastnosti.
ResponseRedirect označuje přesměrování uživatele na tuto chybovou stránku a původní URL je změněna na URL této chybové stránky.
ResponseRewrite označuje nasměrování uživatele na chybovou stránku bez změny původní URL v prohlížeči.

Poté do 404.aspx.cs souboru přidejte následující kód pro událost Page_Load:
Zkopírovat kód Kód je následující:

chráněný void Page_Load(object sender, EventArgs e)
{
Response.Status = "404 Not Found";
}





Předchozí:ASPX vs. stránka MVC captcha
Další:c# SmtpClient odesílá zdrojový kód e-mailu
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com