Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 15179|Odgovoriti: 0

[ASP.NET] Asp.Net Nastavitev strani 404

[Kopiraj povezavo]
Objavljeno na 24. 12. 2015 17:39:45 | | | |


Kaj je napaka 404?
Napaka HTTP 404 pomeni, da spletna stran, na katero povezava kaže, ne obstaja, torej je URL izvirne spletne strani neveljaven, kar se pogosto dogaja in je težko preprečiti, na primer: spremembe pravil za generiranje URL-jev spletnih strani, preimenovanje ali premikanje datoteke spletne strani, napačno črkovanje uvožene povezave itd., zaradi česar je izvorni URL naslov nedostopen; Ko spletni strežnik prejme podoben zahtevek, vrne statusno kodo 404, ki brskalniku sporoči, da zahtevani vir ne obstaja. Vendar pa je privzeta stran z napako 404 za spletne strežnike, bodisi Apache ali IIS, zelo osnovna, dolgočasna in neprijazna do uporabnika ter uporabnikom ne zagotavlja potrebnih informacij za dodatne namige, kar bo nedvomno povzročilo odhod uporabnikov.
Vloga 404 strani
Iskalniki uporabljajo HTTP statusne kode za identifikacijo statusa spletne strani. Ko iskalnik dobi napačno povezavo, bi morala spletna stran vrniti statusno kodo 404, ki iskalniku sporoča, naj opusti indeksiranje povezave. Če se vrne statusna koda 200 ali 302, iskalniki indeksirajo povezavo, kar povzroči veliko število različnih povezav, ki kažejo na isto spletno vsebino. Zaradi tega iskalniki strani precej manj zaupajo.
Kako preveriti, da prilagojena stran 404 vrne statusno kodo "404"
Po nastavitvi prilagojene strani z napako 404 preverite, ali pravilno vrne statusno kodo "404". Metoda preverjanja je prav tako precej preprosta: vnesete URL spletne strani, ki ne obstaja na spletni strani, preverite vrnitev HTTP glave in se prepričajte, da vrne statusno kodo "404".
404 stran je prava odločitev
1. Kako nastaviti stran Apache strežnika 404
Dodajte kodo v datoteko .htaccess: ErrorDocument 404/Error.html
Zgradite preprost HTML404 poimenovanje strani Error.html
Postavite Error.html v korenski imenik vaše spletne strani.
2. Nastavite stran z napako 404 pod IIS/ASP.net
Najprej spremenite nastavitve korenske mape aplikacije, odprite urejanje datoteke "web.config" in vanjo dodajte naslednjo vsebino:

<configuration>
<system.web>
<customErrors mode="Vklopljeno" defaultRedirect="error.asp">
<error statusCode="404" preusmeritev="notfound.asp" />
</customErrors>
</system.web>
</configuration>

V tem primeru je error.asp privzeta stran 404, notfound.asp pa prilagojena stran 404.
Nato dodajte prilagojeno stran 404 "notfound.asp":

<%
Response.Status = "404 Ni najdeno"
%>

To zagotavlja, da IIS pravilno vrne statusno kodo "404"
Prijazen opomnik
1. Poskrbite, da napake 404 ne usmerite neposredno na domačo stran spletne strani, kar lahko povzroči, da domača stran ne bo vključena;
2. /Error.html Prosimo, ne prinašajte glavne domene pred njo (napačno črkovanje: yzznl.cn/error.html, pravilno pisanje :/error.html), sicer je vrnjena statusna koda 302 ali 200.
Ko iščete, kako prilagoditi stran z napako 404 na asp.net spletni strani, večina člankov svetuje, da obiščete web.config, poiščete system.web in nastavite naslednje.

Kopiraj kodo Koda je naslednja:

<customErrors mode="Vklopljeno" error statusCode="404" preusmeritev="/404.htm" >
</customErrors>


Pravzaprav po tem ne boste prejeli informacij o glavi neodkrite spletne strani 404, temveč podatke o glavi začasnega preusmeritve 302. Za preverjanje HTTP statusnih kod lahko uporabite orodje Check Headers Tool.

Kako torej pravilno nastaviti prilagojene spletne strani z napakami 404 za asp.net spletno stran?

Začnite tako, da ustvarite 404.aspx stran, nato pa jo konfigurirajte v customeErrors pod datoteko web.config tako:
customErrors redirectMode="ResponseRewrite"
fault statusCode="404" preusmeritev="~/404.aspx"/
/customErrors

RedirectMode ima dve lastnosti.
ResponseRedirect pomeni preusmeritev uporabnika na to stran z napako, pri čemer se izvirni URL spremeni v URL te strani z napako.
ResponseRewrite se nanaša na usmerjanje uporabnika na stran z napako brez spreminjanja izvirnega URL-ja v brskalniku.

Nato v 404.aspx.cs datoteko dodajte naslednjo kodo za dogodek Page_Load:
Kopiraj kodo Koda je naslednja:

zaščitena praznina Page_Load(pošiljatelj objekta, EventArgs e)
{
Response.Status = "404 ni najdeno";
}





Prejšnji:ASPX proti MVC Page CAPTCHA
Naslednji:c# SmtpClient pošilja izvorno kodo e-pošte
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com