Pæne URL'er fejler

Tags:    php

Jeg sidder og har et lidt underligt problem med at lave pæne URL'er med mod_rewrite og PHP.

I min .htaccess har jeg sat følgende op
Fold kodeboks ind/udKode 


Det fungerer sådan set også fint nok. Skriver jeg www.bla.dk/a/b får jeg i PHP en $_SERVER['QUERY_STRING'] som siger /a/b.

Problemet opstår bare når min request rammer en mappe der eksisterer på server.

Ligger der f.eks. en mappe der hedder test i roden af hjemmesiden, og jeg så skriver www.bla.dk/test bliver jeg videresendt til www.bla.dk/test/?/test og min QUERY_STRING kommer til at se ligeledes ud. Hvad kan jeg gøre for at undgå dette?







5 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 2 karma
Sorter efter stemmer Sorter efter dato
Det jeg selv bruger til nuværende projekt er:
Fold kodeboks ind/udKode 


Hvis ovenstående ikke løser dit problem, lyder det som om at du må skrive en regel for /images/* som går forud for den anden.



Indlæg senest redigeret d. 14.05.2008 22:21 af Bruger #10216
RewriteCond %{REQUEST_FILENAME} !-d

Så vil den ikke videresende til test.php ved mapper. Ved ikke om det er det du er ude efter?



Nej det er jeg ikke, faktisk skal den også rewrite rodden til en anden mappe.

På den her måde:

/
/mappe1
/mappe2
/mappe3
/public/her skal rodden være så man ikke har adgang til mappe1 osv.
/mappe4

Lige nu er problemet så bare at hvis jeg sætter den til at kunne vise mapper og jeg går ind i bla.dk/images (hvor images så ligger i /public) kommer url'en til at være bla.dk/public/images hvilket heller ikke er optimalt.



Indlæg senest redigeret d. 13.05.2008 08:19 af Bruger #3275
Du kunne skrive din .htaccess ca. således:

Fold kodeboks ind/udKode 


Så bliver alt sendt videre til public folder, uden at indsætte en masse ekstra.



Den laver stadig /images om til /public/images :(.



t