regulært udtryk

Tags:    htaccess rewriterule

<< < 12 > >>
Jeg vil gerne gøre så følgende 3 urls viderestilles:
localhost/ub/123/noget-tekst
localhost/ub/123/
localhost/ub/123

I min .htaccess fil skriver jeg følgende.
Fold kodeboks ind/udKode 

Det virker men jeg er ikke god til regulært udtryk og sidder bare og gætter mig frem til hvad der skal stå.
Og det skulle jo gerne kun være 1 linie og ikke 2.
Så hvordan skriver jeg det rigtigt ?

Hvordan siger jeg at der måske skal være et /-tegn ?
Jeg har prøvet med [/]? og ligende men ved ikke helt hvordan jeg skal gøre.



12 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
Prøv denne i stedet - så er der stadig ingen PHP inde i billedet. :)

RewriteRule ^ub/(.+)(/.+)?$ scooterhjemmeside/billeder.php?$1


det ser jo dejlig nemt ud, trode man skulle pakke / ind i alt muligt først :)
så kan man lige så godt lave den første (.+) om til ([0-9]+)



Hvis jeg bruger :
RewriteRule ^ub/(.+)(/.+)?$ scooterhjemmeside/billeder.php?$1

Så virker det bare ikke med :
http://localhost/ub/123/

---

For lige at opsumere...

Dette virker fint :
RewriteRule ^ub/([0-9]+)/?.*$ scooterhjemmeside/billeder.php?$1 [L]

...bortset fra at hvis der er en titel i urlen så virker dette også men det skal det ikke
localhost/ub/123noget-tekst

Så alle de her skal være gyldige :

localhost/ub/123
localhost/ub/123/
localhost/ub/123/noget-tekst

Men den her skal ikke være gyldig :

localhost/ub/123noget-tekst

Ved godt jeg er kræsen men ville da være rart at få det perfekt.



Indlæg senest redigeret d. 25.04.2012 09:54 af Bruger #13010
<< < 12 > >>
t