RewriteRule !^(.+\.[a-zA-Z]+)$ index.php?page=$0 [QSA]
Virker perfekt bortset fra, at backreferences er slået fra, når man bruger NOT ('!') i Apache.
Det, den ovenstående regex gør (og den ønskede regex også skal), er, at sende ALLE sider (som ikke har en extension (fx '/hej.a') til index, hvor den så viser den rette side. Lige nu er $N jo tom.
Jeg ønsker nemlig ikke at opdatere .htacces hver gang, jeg opretter en ny side i wCMS'en (ja, jeg bruger faux directories), så jeg sender bare det hele af sted, så kan PHP klare resten (men filer (style.css, index.php, downloadfile.exe, etc.) skal ikke fanges).
Hvordan kan jeg omskrive den, så den opfylder mit ønske? Jeg har ledt efter en ordentlig not/negation character, men det nærmeste, der findes, er ^ til character classes/sets.
(Apache 2.2, så PCRE5 og lookaround er der)
Indlæg senest redigeret d. 07.08.2010 20:35 af Bruger #11555