[Apache] Vraagteken escapen in .htaccess

Pagina: 1
Acties:

  • Mawlana
  • Registratie: Juli 2002
  • Laatst online: 12:09
Het escapen van een vraagteken in .htaccess bij een RewriteRule wil bij mij niet echt lukken.

Ik wil dat bla.php?p=forum naar bb.php verwijst (vraag me niet waarom :P).

code:
1
2
3
RewriteEngine On
RewriteBase /
RewriteRule ^bla.php?p=forum$ /bb.php

bla.php=forum en bla.phpp=forum werken beiden goed.

code:
1
2
3
RewriteEngine On
RewriteBase /
RewriteRule ^bla.php\\?p=forum$ /bb.php

Als ik het vraagteken wil escapen moet ik twee backslashes gebruiken omdat een backslash ook geëscaped moet worden (naar mijn weten). Echter, dan krijg ik een error 404 terug. Ook als ik de backslash niet escape krijg ik een error 404 terug.

Ik heb me de pleuris gezocht op GoT en Google, maar tevergeefs.

Kan iemand me helpen?

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

noescape|NE' (no URI escaping of output)

This flag keeps mod_rewrite from applying the usual URI escaping rules to the result of a rewrite. Ordinarily, special characters (such as '%', '$', ';', and so on) will be escaped into their hexcode equivalents ('%25', '%24', and '%3B', respectively); this flag prevents this from being done. This allows percent symbols to appear in the output, as in
code:
1
RewriteRule /foo/(.*) /bar?arg=P1\%3d$1 [R,NE]

which would turn '/foo/zed' into a safe request for '/bar?arg=P1=zed'.
kun je met deze flag iets verzinnen :?

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • Mawlana
  • Registratie: Juli 2002
  • Laatst online: 12:09
noescape|NE' (no URI escaping of output)
Dat zegt genoeg he. ;)

[ Voor 6% gewijzigd door Mawlana op 18-01-2004 01:06 ]


Verwijderd

Je krijgt alles wat achter dat vraagteken staat toch enkel door in %{QUERY_STRING} en niet in je url zelf?
Ik denk dat je dus en je query string moet checken en de rest van de url.

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Nou het was ff heel hard zoeken maar het is me gelukt :D

code:
1
2
3
4
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} ^p=forum$
RewriteRule ^bla.php$ bb.php
Je kan overigens ook
PHP:
1
if ($_GET['p'] == 'forum') include bb.php; else { [...] }
doen ;)

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate