Autor Zpráva
Ondřej Mirtes
Profil *
Ahoj,
rád bych v mod_rewrite nasimuloval url_decode. Dělám request na vzdálenou službu a potřebuji si pro návrat uchovat adresu, kam se má přesměrovat po zpracování požadavku. Dávám si ji tedy do GET parametru forward a přirozeně ji tam musím escapovat pomocí urlencode. Rád bych po návratu odescapoval ještě v mod_rewrite a můj stávající pokus vypadá takto:

RewriteCond %{QUERY_STRING} ^(.*)%3F(.*)$
RewriteRule ^(.*)$ $1?%1&%2 [N]

RewriteCond %{QUERY_STRING} ^(.*)%3D(.*)$
RewriteRule ^(.*)$ $1?%1=%2 [N]


Chová se při tom velice zvláštně. Druhý RewriteCond matchne v URL "%253D" a nahradí to za správné =. Je zvláštní, že matchne enkódované % v podobě %25, když do pravidla zadávám pouze %. V pokračování URL je ovšem už jen %3D, které chci také dekódovat na =, ale nevím, jak to zapsat do mod_rewrite.

Předem díky.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: