Tento článok je zrkadlovým článkom o strojovom preklade, kliknite sem pre prechod na pôvodný článok.

Pohľad: 15179|Odpoveď: 0

[ASP.NET] Asp.Net Nastavenie 404 strán

[Kopírovať odkaz]
Zverejnené 24. 12. 2015 17:39:45 | | | |


Čo je to chyba 404?
Chyba HTTP 404 znamená, že webová stránka, na ktorú odkaz odkazuje, neexistuje, teda URL pôvodnej webovej stránky je neplatná, čo sa často stáva a je ťažké tomu vyhnúť, napríklad: zmeny v pravidlách generovania URL webových stránok, premenovanie alebo presun súboru webovej stránky, nesprávne napísanie importovaného odkazu a podobne, čo vedie k neprístupnosti pôvodnej URL adresy; Keď webový server dostane podobnú požiadavku, vráti stavový kód 404, ktorý prehliadaču oznámi, že požadovaný zdroj neexistuje. Avšak predvolená chybová stránka 404 pre webové servery, či už ide o Apache alebo IIS, je veľmi základná, nudná a nepriateľská k používateľom a neposkytuje používateľom potrebné informácie na získanie ďalších indícií, čo nepochybne spôsobí odchod používateľov.
Úloha 404 strán
Vyhľadávače používajú HTTP stavové kódy na identifikáciu stavu webovej stránky. Keď vyhľadávač nájde nesprávny odkaz, mal by vrátiť stavový kód 404, ktorý vyhľadávaču hovorí, aby odkaz prestal indexovať. Ak sa vráti stavový kód 200 alebo 302, vyhľadávače indexujú odkaz, čo vedie k veľkému počtu rôznych odkazov smerujúcich na rovnaký webový obsah. V dôsledku toho vyhľadávače stránke dôverujú oveľa menej.
Ako skontrolovať, či vlastná stránka 404 vráti stavový kód "404"
Po nastavení vlastnej stránky s chybou 404 si skontrolujte, či správne vracia stavový kód "404". Metóda kontroly je tiež pomerne jednoduchá – zadajte URL webovej stránky, ktorá na stránke neexistuje, skontrolujte návrat HTTP hlavičky a uistite sa, že vráti stavový kód "404".
404 strana je správna vec
1. Ako nastaviť stránku Apache servera 404
Pridajte kód do súboru .htaccess: ErrorDocument 404/Error.html
Vytvorte jednoduchý HTML404 na pomenovanie stránok Error.html
Umiestnite Error.html do koreňového adresára vašej webovej stránky.
2. Nastavte chybovú stránku 404 pod IIS/ASP.net
Najprv upravte nastavenia koreňového adresára aplikácie, otvorte úpravu súboru "web.config" a pridajte doň nasledujúci obsah:

<configuration>
<system.web>
<customErrors mode="Zapnuté" defaultRedirect="error.asp">
<error statusCode="404" presmerovanie="notfound.asp" />
</customErrors>
</system.web>
</configuration>

V tomto príklade je error.asp predvolená 404 stránka a notfound.asp je prispôsobená 404 stránka.
Potom pridajte vlastnú stránku 404 "notfound.asp":

<%
Response.Status = "404 nenájdené"
%>

To zabezpečuje, že IIS správne vracia stavový kód "404"
Priateľská pripomienka
1. Uistite sa, že chybu 404 nesmerujete priamo na domovskú stránku webu, čo môže spôsobiť, že vaša domovská stránka nebude zahrnutá;
2. /Error.html Prosím, neuvádzajte pred ňou hlavné doménové meno (nesprávny pravopis: yzznl.cn/error.html, správne napísané :/error.html), inak vrátený stavový kód je 302 alebo 200.
Pri hľadaní, ako prispôsobiť stránku s chybou 404 na asp.net webe, väčšina článkov odporúča ísť na web.config, nájsť system.web a nastaviť nasledujúce.

Kopírovať kód Kód je nasledovný:

<customErrors mode="Zapnuté" error statusCode="404" presmerovanie="/404.htm" >
</customErrors>


V skutočnosti po tomto uvedení nedostanete informácie o hlavičke nenájdenej webovej stránky 404, ale informácie o hlavičke dočasného presmerovania 302. Nástroj Check Headers Tool môžete použiť na kontrolu HTTP stavových kódov.

Ako teda správne nastaviť vlastné webové stránky s chybami 404 pre asp.net web?

Začnite vytvorením 404.aspx stránky, potom ju nakonfigurujte v customeErrors v súbore web.config nasledovne:
customErrors redirectMode="ResponseRewrite"
error statusCode="404" presmerovanie="~/404.aspx"/
/customErrors

RedirectMode má dve vlastnosti.
ResponseRedirect znamená presmerovanie používateľa na túto chybovú stránku a pôvodná URL adresa sa zmení na URL tejto chybovej stránky.
ResponseRewrite znamená nasmerovanie používateľa na chybovú stránku bez zmeny pôvodnej URL adresy v prehliadači.

Potom do 404.aspx.cs súboru pridajte nasledujúci kód pre Page_Load udalosť:
Kopírovať kód Kód je nasledovný:

chránený void Page_Load(odosielateľ objektu, EventArgs e)
{
Response.Status = "404 nenájdené";
}





Predchádzajúci:ASPX vs. MVC stránka captcha
Budúci:c# SmtpClient posiela zdrojový kód e-mailu
Vyhlásenie:
Všetok softvér, programovacie materiály alebo články publikované spoločnosťou Code Farmer Network slúžia len na vzdelávacie a výskumné účely; Vyššie uvedený obsah nesmie byť použitý na komerčné alebo nezákonné účely, inak nesú všetky následky používateľmi. Informácie na tejto stránke pochádzajú z internetu a spory o autorské práva s touto stránkou nesúvisia. Musíte úplne vymazať vyššie uvedený obsah zo svojho počítača do 24 hodín od stiahnutia. Ak sa vám program páči, podporte originálny softvér, zakúpte si registráciu a získajte lepšie originálne služby. Ak dôjde k akémukoľvek porušeniu, kontaktujte nás prosím e-mailom.

Mail To:help@itsvse.com