webForumDet fria alternativet

Eget 404 funkar inte som det ska i IIS 4

Webbservrar

3 svar · 300 visningar · startad av Kapten Haddock

Medlem sedan jan. 2006600 inlägg
Frågan#1

Mitt företags hemsida har ett stort nejnej när det gäller ranking, vi har spegel domäner, xxxx.fi/se/de/eu/info osv...

För att åtgärda detta tänker jag flytta alla domäner förutom .fi som blir våran primära domän, till en annan webserverprocess och för att inte förvirra besökare med en massa 404 fel så tänker jag därifrån göra en egen 404 som skickar besökaren till www.xxxx.fi/<sökväg>/ automatiskt.

Det var inte så svårt:

vDomain = "http://www.spadealers.fi"
urlPath = Request.ServerVariables("URL")
newURL = vDomain & urlPath

response.Redirect newURL

Problemet är när jag byter ut den vanliga 404:an mot denna ASP fil.
Den funkar när jag öppnar den i webbläsaren och skickar mig dit den ska, men när jag skriver in en address som inte finns på den servern men på den andra så händer det inte samma sak. Då så kommer det fram en spara fil prompt istället för en automatiskt redirect. Varför händer detta?

Medlem sedan jan. 2006600 inlägg
#2

Nå jag fick ASP att funka men det ledde till en hel massa nya problem, som att den path besökaren skriver in inte uppfattas korrekt och path blir alltid /customerror/404.asp istället.

Detta blev visst ett ASP problem istället för ett IIS problem nu.

Kan nån moderator flytta denna tråd till ASP forumet nu?

Vad jag behöver är lite mera komplext nu och jag vet inte om ASP klarar det.
Jag behöver en replace kod som kan automatiskt ta bort domännamnet från en adress, alltså ta bort allt från http://www.xxx.xx/mapp/fil.asp

Medlem sedan juni 2000974 inlägg
#3

Du måste ha en check som kollar din om din adress har http:// i början. Har den det ska den kolla nästa / tecken, och därefter skippa allt före detta tecken.
Om adressen inte innehålller hhtp:// bör du ta bort allt före / tecknet.

Medlem sedan jan. 2006600 inlägg
#4

Ja men det är det jag behöver hjälp med. om replace hadde stött wildcards hadde jag kunnat fixa det lätt men det funkar inte. Alternativt måste jag använda mid() men det kräver att jag kör en egen serverinstans för varje domän då inte alla har lika många tecken.

268 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
132 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
133 ms — ändringar (db)