Vraag & Antwoord

Webdesign (HTML, CSS, Flash)

Mod_rewrite: uitzondering toevoegen aan RewriteRule

Anoniem
georgeboot
2 antwoorden
  • Hallo!

    Heb het halve internet al afgezocht, maar nergens kom ik een goede duidelijk uitleg tegen voor dit probleem:
    Ik heb een CMS gemaakt, die pagina's uit de database laad. Nu moet hij dus alles Rewrite, behalve de mappen CMS en Media.

    Maar hoe ik dit oplos?
    Heb al van alles geprobeerd! Niets lukt me.
    Kan iemand mij hiermee helpen?

    Mijn .htaccess nu:[code:1:1ec7c77938]
    RewriteEngine On
    RewriteRule ^(!cms|!media|.*)/(.*)/ ?lang=$1&url=$2[/code:1:1ec7c77938]

    Volgens het internet zou die "!cms" de map CMS als een uitzondering moeten toevoegen.. Het werkt alleen niet.


    Iemand die mij kan helpen!!?? Bedankt alvast!
  • Zijn ál jouw mappen en bestanden van de volgende opzet?[quote:f04e0919bd]^(!cms|!media|.*)/(.*)/[/quote:f04e0919bd]
    Het zou kunnen, maar het lijkt mij onwaarschijnlijk. Ten eerste vermoed ik dat jouw bestandsstructuur best wel eens dieper zou kunnen zijn dan één submap diep vanuit "cms" en "media", ten tweede snap ik de eerste ".*" niet (dat is namelijk alles, dus die pak je al met de eerste twee regels) en ten derde denk ik dat je bestanden in "cms" en "media" wil aanspreken en dat het pad naar die bestanden niet eindigt op een slash ("/";). Kortom, bedenk eens goed welke gevallen je precies wil afvangen, schrijf die op in korte duidelijk regels, ahw een stappenplan, en vertaal dat naar een (simpele) regexp. Hulp nodig? Plaats hier dan even een groot aantal voorbeeldadressen en zet erbij of die wél of niét door de regel afgevangen moeten worden.

    [b:f04e0919bd]Edit:[/b:f04e0919bd] Als ik een sterretje als wildcard voor "alles" gebruik, dan vang je nu alleen het volgende op:

    "*/*/", met uitzondering van "cms/*/" en "media/*/"

    - Bas

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.