Diskuze: Jak nasimulovat 404
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 10 zpráv z 10.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.


Jenom ještě jedna změna v Application_Error nemám -
Server.ClearError();
Spíše mě fakt zajímá jestli je to správný přístup. Díky
Koukni zde, je to tam hezky vysvetleno i s priklady...
https://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling?view=aspnetcore-2.2
Nechapu ty minusy - stacilo se podivat na google.
Vytvor si na to ErrorController, ktery bude mit metodu Index a ta bude vracet view pro error a pak uprav web.config tak, aby odkazoval prave na ten controller.
Web.config
<customErrors mode="On" defaultRedirect="~/Error" >
<error statusCode="404" redirect="~/Error" />
</customErrors>
Je to treba i zde:
https://stackoverflow.com/a/41137288/3822488
Ten global.asax resit nemusis - jedine, ze bys to tam chtel logovat, ale to muzes udelat i na urovni controlleru, kdy si udelas bazovy controller, ktery bude obsahovat mechanismus pro logovani a z toho bazoveho budou nasledne dedit vsechny controllery.
Děkuji. Vím že je tu tahle možnost, ale přes Global/web.config mi to připadá lepší moje otázky zní zda je to tak v pořádku a jakým způsobem vyvolat chybu 404, protože když vyvolám return HttpNotFound(); Aplikace mi vůbec neskočí do Application_Error a ani nastavení ve webconfigu nezafunguje, ukáže se stránka viz. příloha na to jsem vůbec nedostal odpověď.
Všechny interní chyby (výjimky) lze zachytit pomocí filtru.
Project > FilterConfig.cs
public class FilterConfig
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
}
Společně s Web.config
<customErrors mode="On" defaultRedirect="~/Error"></customErrors> // Error.cshtml v Shared/ složce.
ASP .NET runtime bude vždy vracet "přátelské" Error pohledy.
HttpNotFound() nevrací ASP .NET, ale IIS! Stejně tak jako statické soubory.
A proto, v případě neexistující akce (např. localhost:5000/Home/About):
<customErrors mode="On">
<error statusCode="404" redirect="~/404.html" />
</customErrors>
V případě neexistujícího statického souboru (např. localhost:5000/image.gif):
Project > Web.config
<system.webServer>
<httpErrors errorMode="Custom">
<remove statusCode="404" /> // Odstarní výchozí IIS 404.0 stránku
<error statusCode="404" path="404.html" responseMode="File"> // Tvá vlastní stránka
</httpErrors>
</system.webServer>
Omlouvám se, že jsem nereagoval dříve. Byl jsem mimo PC. Moc Vám děkuji
za rady. 
Zobrazeno 10 zpráv z 10.