Ik gebruik een mod_rewrite om alle URLs af te vangen en op een PHP pagina verder af te handelen:
Het is dus mijn bedoeling dat test.php afgevangen wordt als portal.php?request=test. De pagina komt echter binnen als portal.php?request=portal. Ik vermoed dat portal.php?request=test nogmaals door de mod_rewrite heengaat. Om dit te testen probeerde ik
, dus met een extra t, en nu werkt het wel zoals verwacht, omdat portal.php niet verwerkt wordt omdat dit niet met een t begint. Ik kan nu natuurlijk als eerste regel
toevoegen, waarbij de [L] verdere bewerkingen stopt als er een match is, maar er is vast een fraaiere methode?
code:
1
2
| RewriteEngine On RewriteRule ^([a-zA-Z0-9_-]+)\.php$ portal.php?request=$1 [L] |
Het is dus mijn bedoeling dat test.php afgevangen wordt als portal.php?request=test. De pagina komt echter binnen als portal.php?request=portal. Ik vermoed dat portal.php?request=test nogmaals door de mod_rewrite heengaat. Om dit te testen probeerde ik
code:
1
2
| RewriteEngine On RewriteRule ^t([a-zA-Z0-9_-]+)\.php$ portal.php?request=$1 [L] |
, dus met een extra t, en nu werkt het wel zoals verwacht, omdat portal.php niet verwerkt wordt omdat dit niet met een t begint. Ik kan nu natuurlijk als eerste regel
code:
1
| RewriteRule ^portal.php$ ^portal.php$ [L] |
toevoegen, waarbij de [L] verdere bewerkingen stopt als er een match is, maar er is vast een fraaiere methode?