Beste Tweakers,
Ik loop al een aantal dagen met dit probleem en mijn laatste hoop is gevestigd op jullie
Bij het maken van een shop maak ik gebruik van de mod_rewrite module en een .htaccess file om mijn urls te herschrijven naar 'mooie' urls. Zo wordt bijvoorbeeld
herschreven naar het volgende url
Tot zover geen problemen
Echter, in het scherm kunnen een aantal keuzes gemaakt worden die ik allemaal dmv een HTTP-GET request ophalen. Zo kan het voorkomen dat wanneer een gebruiker veel optionele keuzes maakt, de url er alsvolgt uitziet:
Om de bovenstaande url te herschrijven, gebruik ik dan de volgende regexp:
Echter, bij veel keuzes is echter het maximaal aantal submatches (9) bereikt, waardoor het niet meer mogelijk is deze submatches te herschrijven. In mijn zoektocht naar een oplossing hiervoor kwam ik RewriteMap tegen, waarbij het mogelijk is om bijvoorbeeld met een perl-script de url te herschrijven. Echter, RewriteMap kan niet gebruikt worden vanuit een .htaccess file en ik wil voor dit probleem de apache config files niet aanpassen.
Edit: titel moet natuurlijk [mod_rewrite] ipv [mode_rewrite]
Ik loop al een aantal dagen met dit probleem en mijn laatste hoop is gevestigd op jullie
Bij het maken van een shop maak ik gebruik van de mod_rewrite module en een .htaccess file om mijn urls te herschrijven naar 'mooie' urls. Zo wordt bijvoorbeeld
code:
1
| mijnwebsite.com/Products/groep1/ |
herschreven naar het volgende url
code:
1
| mijnwebsite.com?page=Products&group=groep1 |
Tot zover geen problemen
Echter, in het scherm kunnen een aantal keuzes gemaakt worden die ik allemaal dmv een HTTP-GET request ophalen. Zo kan het voorkomen dat wanneer een gebruiker veel optionele keuzes maakt, de url er alsvolgt uitziet:
code:
1
| mijnwebsite.com/Products/groep1/breedte/3/hoogte/2/diepte/4/extra/1 |
Om de bovenstaande url te herschrijven, gebruik ik dan de volgende regexp:
code:
1
| RewriteRule ^Products(\/([A-Za-z0-9_]))?(\/breedte\/([A-Za-z0-9_]))?(\hoogte\//([A-Za-z0-9_]))?(\/diepte\/([A-Za-z0-9_]))?(\/extra\/([A-Za-z0-9_]))? index.php?productgroup=$1&hoogte=$3&hoogte=$5 etc.. |
Echter, bij veel keuzes is echter het maximaal aantal submatches (9) bereikt, waardoor het niet meer mogelijk is deze submatches te herschrijven. In mijn zoektocht naar een oplossing hiervoor kwam ik RewriteMap tegen, waarbij het mogelijk is om bijvoorbeeld met een perl-script de url te herschrijven. Echter, RewriteMap kan niet gebruikt worden vanuit een .htaccess file en ik wil voor dit probleem de apache config files niet aanpassen.
Edit: titel moet natuurlijk [mod_rewrite] ipv [mode_rewrite]