Avatar billede angelenglen Nybegynder
30. marts 2011 - 11:35 Der er 4 kommentarer og
1 løsning

Omskrivning af URL

Jeg bruger et plugin der omskriver URL'er på min webserver, og den bruger regex til det.

Herunder har jeg to eksempler:

RewriteRule  ^/Sikker-paa-cykel$  /Sikker-paa-cykel.asp [I,L]
RewriteRule  ^/Sikker-paa-cykel\?(.*)$  /Sikker-paa-cykel.asp?$1 [I,L]


Grunden til at jeg har to linier, er at den første hitter på fx
/Sikker-paa-cykel
og den anden hitter på fx:
/Sikker-paa-cykel?test=1

I de to ovenstående tilfælde ville URL'en blive omskrevet til disse to:
/Sikker-paa-cykel.asp
/Sikker-paa-cykel.asp?test=1


Men jeg vil gerne have det således at jeg ikke behøver to linjer for at opnå det samme.
Det er ok hvis det ender med at de to eksempler ville give følgende URL'er:
/Sikker-paa-cykel.asp?
/Sikker-paa-cykel.asp?test=1

Jeg kan bare ikke se mig ud af hvordan jeg kan få den til at hitte både med og uden ?-tegnet og den efterfølgende tekst.

Håber jeg har forklaret det godt nok :-)
Ellers bare spørg, så prøver jeg at omformulere det.




Ps:
Forklaring på "[I,L]" er: I="case insensitive", L="Stop efter hit"
Avatar billede johny Nybegynder
30. marts 2011 - 13:11 #1
Du burde bare kunne bruge
RewriteRule  ^/Sikker-paa-cykel\??(.*)$  /Sikker-paa-cykel.asp?$1 [I,L]

Men det resulterer så i at ? altid er med til sidst, samt at der også hittes på alt andet end lige "asp?...", da spørgsmålstegnet så kun er optionelt.
Avatar billede angelenglen Nybegynder
30. marts 2011 - 14:58 #2
Tror det er tæt på, men ikke helt præcist endnu.

Hvis jeg fx har følgende to regler:
RewriteRule  ^/Sikker-paa-cykel\??(.*)$  /Sikker-paa-cykel.asp?$1 [I,L]
RewriteRule  ^/Sikker-paa-cykelen\??(.*)$  /Sikker-paa-cykelen.asp?$1 [I,L]

og åbner siden "/Sikker-paa-cykeler"
Så går den til /Sikker-paa-cykel.asp?er

Og det er jo ikke meningen, for kombinationen der slutter på "er" findes ikke.

Den skal kun gå til Sikker-paa-cykel.asp, hvis man skriver "/Sikker-paa-cykel" eller "Sikker-paa-cykel?et-eller-andet"
Avatar billede johny Nybegynder
30. marts 2011 - 17:33 #3
Ah, my bad, den her skulle være bedre, plus kun sætte spørgsmålstegn om nødvendigt.

RewriteRule  ^/Sikker-paa-cykel(\?.*)?$  /Sikker-paa-cykel.asp$1 [I,L]
Avatar billede angelenglen Nybegynder
10. august 2011 - 10:50 #4
Det virkede forresten fint, bare læg et svar :-D
Avatar billede johny Nybegynder
10. august 2011 - 14:23 #5
Godt at høre. :) /svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester