Det verkar som att min kod i båda fallen skickar ut "about" i action-variabeln, men när jag skriver about/ så hittar den dessutom på något annat och skriver om så att alla mina andra sökvägar inte hittas (till bilder och stylesheet-fil m.m.). Jag kan inte regexp så bra så ni ser säkert direkt hur jag borde göra i stället ;)
Felet beror på att webbläsaren tolkar /about/ som att du befinner dig i en mapp och letar efter din (relativt angivna) stilmall i /about/stilmall.css. Samma sak med länkar. Den eklaste och bästa lösningen är att alltid ange absoluta sökvägar, dvs börja sökvägen med /.
Går det att skriva det jag vill göra på ett bättre sätt också? ;)
Och sista frågan, om jag på detta vill kunna lägga till vanliga querystrings, är det möjligt, utan att den tolkar in min querystring i regexp:en?
T.ex.
about/basse/ID-1-minpost/?keyword=sökord
Jag är som sagt ute på okänt vatten här, men prio ett är att få min rewrite-kod att funka på båda servrarna. Den ena verkar tolka hårdare eller nåt...
I en grupp med tecken i en regex så har - (bindestreck) normalt en speciell betydelse, nämligen att definiera omfång av tecken, t ex a-z. Därför kan man inte placera - mitt i gruppen när man uttryckligen vill matcha det tecknet. Du måste placera dessa tecken först eller sist i gruppen. Alltså [A-Za-z0-9_-] eller [-A-Za-z0-9_]. Eventuellt kan det variera mellan Apache-versioner om den accepterar bindestreck i början eller slutet av gruppen. Om den ena ger fel, prova den andra.
Apache tolkar aldrig in querystringen till det som matchas av regexen. Fil-delen av URL'en och querystringen räknas som olika delar, och det är bara "filsökvägen" som matchas av regexen. Däremot rensas querystringen varje gång du har en regel som ändrar querystringens innehåll. Sättet runt detta är att lägga till [QSA] på slutet av de regler som gör detta. Då behålls den gamla querystringen.