Nej, tyvärr inte.
IIS är det som "känner" av när en sida inte finns i applikationen och kör då sin 404-sida.
Men jag kan inte säga att jag är 100% säker så kanske kommer någon och rättar till mig?! ;)
10 svar · 344 visningar · startad av bigsky
Om man inte har tillgång till att skapa egna 404-filer på webbhotellet, kan man då på något sätt med ASP skapa en fil som ligger i root-katalogen och "känner" av när filnamnet surfaren skrivit in inte finns på servern? Ja, eller nåt liknande?
Nej, tyvärr inte.
IIS är det som "känner" av när en sida inte finns i applikationen och kör då sin 404-sida.
Men jag kan inte säga att jag är 100% säker så kanske kommer någon och rättar till mig?! ;)
Det låter väldigt svårt, säkerligen omöjligt då det är IIS som kollar sidorna...Sidan måste ju isf ligga och hålla koll hela tiden och kontrollera, det kommer dessutom bli en enorm serverbelastning om det går.
Det du kan göra är ju dock att du kör EN sida med querystrings och beroende på värde på querystringen som matats in visar upp en sida om det är ett ID som finns på sidan eller 404-mess om det inte finns.
Det är dock inte heller att rekomendera då det också kommer dra en massa onödig serverkapacitet.
Det är dock inte heller att rekomendera då det också kommer dra en massa onödig serverkapacitet.
Nja, det beror på hur man kodar det.
Det finns många sidor där man endast är på default.asp och sedan fixar koden in en massa andra filer i denna genom querystrings.
cyprys skrev:
Det är dock inte heller att rekomendera då det också kommer dra en massa onödig serverkapacitet.
Nja, det beror på hur man kodar det.
Det finns många sidor där man endast är på default.asp och sedan fixar koden in en massa andra filer i denna genom querystrings.
colione skrev:
Det är dock inte heller att rekomendera då det också kommer dra en massa onödig serverkapacitet.
;)
Här kommer du dock att få gå ett steg längre då du måste kontrollera om det idt öht finns på sidan. Det kan man göra både med en case..switch-sats och en if-sats ingen känns dock som ett bra val för detta.
r> Tänk dig desutom att han kör med fler querystrings..exempel:
default.asp?databas=ja&loggain=ja&vadsomhelst=nåtannat
Då har han även öppnat (som exempel i det här fallet) en databas helt i onödan, dessa som man ska öppna så sent som möjligt och stänga strax innan.
En övervägan att flytta til ett hotell som stöder egna vore nog bra.
Nu tror jag vi strövar lite OT här, mitt fel. ;)
Men man behöver inte öppna någon databas förrän i sista stund ändå. Detta illustrerat på t.ex. https://www.regiosport.nu där den metoden används.
För att svara på frågan än en gång, lite tydligare.
Det finns många metoder för att få till sidor som verkar ungefär som en 404-sida, men bara IIS kan skicka vidare till den riktiga.
Ex. Användaren skriver in w ww.domän.com/filen_som_inte_finns.asp
Om den inte finns så kan man inte hänvisa till någon sida utan att ha tillgång till 404-sidan.
cyprys skrev:
Men man behöver inte öppna någon databas förrän i sista stund ändå. Detta illustrerat på t.ex. https://www.regiosport.nu där den metoden används.
Och för att fortsätta denna underbara OT-diskussion...Där skickas man tillbaka till första sidan inte till en 404 när man skriver in fel sak i qsen (jag provade :p ) på så sätt slipper de en massa otrevliga extra if-satser och att öppna den där db-connectionen om fel sida öppnas...
Där skickas man tillbaka till första sidan inte till en 404 när man skriver in fel sak i qsen (jag provade )
Det beror endast på att jag skrev
case else
load(start.ascx) <-- Ungefär ;)
Kunde lika gärna ha sagt åt den att ladda en 404-sida av eget val. Men detta gäller ju endast så länge man är inne på index.aspx, som sagt.
/r Jag har ännu inte laddat in någon databaskoppling innan detta val är gjort.
Har nu uppgraderat till ett större paket där egna felmeddelanden ingår (det var ändå dags pga platsbrist...). Problemet är ju att om man har flera hemsidor med olika innehåll (där de olika url:erna är redirectade till underkataloger osv) på sitt konto, får ju alla samma 404. Skulle man i 404:an kunna ta reda på vart (kanske från vilken underkatalog eller i värsta fall från vilken url) surfaren kom i från och på så sätt skicka denne vidare till en "falsk" 404 inom resp. underkatalog/hemsida?
Nu är ju visserligen 404:an en html-fil, men det kanske går iaf?
Man kan ställa in vilken url eller fil som skall köras då servern inte hittar en sida (404), alla andra fel oxå... På sajt nivå!!
Kolla i IIS admin, och klicka på properties för en sajt, välj fliken 'Custom Errors' och sen förstår du nog resten... :)
Redigerat:
Oops, läste inte din fråga tillräckligt väl... ber om ursäkt.
Aja, kruxet är ju då bara att webbhotellet inte skulle tillåta det :)