Omskrivning af adresselinjen

Tags:    asp.net c# iis

Kære udviklere,

Udvikling af et Rewrite Rule i ASP.NET syntes jeg virker besværligt i forhold til at udvikle det til en Apache server igennem .htaccess filen. Men ligemeget - jeg vil gerne have opskrevet min url adresse på mit projekt som kører primært lokalt (indtil videre). Det virker fint når jeg kører det lokalt, men så snart det bliver lagt online kommer der fejl fra min IIS der siger at destinationen ikke eksisterer.

Jeg har indskrevet dette i min web.config fil:
Fold kodeboks ind/udXML kode 


Og det virker som sagt fint når det kører lokalt. Men hvilket alternativ kan der bruges da det skal kunne køre online?



9 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Jeg ville uden tvivl kigge på routing i stedet - så kan du, i hvert fald hvis ovenstående er dine URLs, nøjes med at definere en enkelt regel;

URL Routing



Jeg har nu prøvet at omskrive url adressen ved URL Routing, men det virker stadigvæk ikke. Fejlen ligger i at den ikke kan finde destinationen. Forstår ikke hvorfor.

Global.asax
Fold kodeboks ind/udKode 




er du sikker på man skal benytte tilda ? ... altså "~"



Jeg har prøvet at ændre det til et punktum. Det virker stadigvæk ikke. Men jeg har en formodning om at det er noget der skal ordnes igennem webhotellet.



Et meget dumt spm, men hvis du skriver fx /referencer.aspx i adresse-linjen kommer siden så fint nok frem?



Ja, det gør den. Den hedder så Referencer.aspx. Men ja, det gør den både lokalt og på en server.



Et gæt er at din kode slet ikke når ned i routingen så, det kan du evt undersøge ved at udføre en form for log. Hvis routingen ikke kører kan du evt prøve følgende forslag.

Anden interessant ting du kunne undersøge var hvilken IIS du kørte på.



du kan være uheldig at web hotellet har lavet web.config i et højere niveau der så overskriver din og kan slå det helt fra.. så mit forslag ville også være at logge hvad der sker for nogle steder et det sådanne ting man skal snakke med dem om for at få ordnet



For at undgå at undgå dine brugere kan hente HttpHandlerens .axd filer bør du tilføje denne linje i toppen af RegisterRoutes()

Fold kodeboks ind/udCSharp kode 


Udover dette plejer jeg når jeg arbejder med routing at benytte de her settings i min web.config. De skal placeres under <system.webServer>
Fold kodeboks ind/udCSharp kode 




Indlæg senest redigeret d. 30.08.2012 01:51 af Bruger #15687
t