Tengo un problema relacionado con .htaccess y QUERY_STRING.htaccess QUERY_STRING urldecode
trato de redirigir una URL con mi .htaccess que tiene este aspecto:
http://mydomain.tld/out/http%3A%2F%2Fotherdomain.tld%3Fparam%3D0
a
http://otherdomain.tld?param=0
utilizo RewriteCond y RewriteRule con el REQUEST_URI para redirigir la url y todo funciona bien, ya que REQUEST_URI está urldecodificado de forma predeterminada en htaccess.
Sin embargo, cuando envío el enlace a Hotmail por correo electrónico, Hotmail urldecodes las barras diagonales y el signo de interrogación. El resultado es el siguiente:
http://mydomain.tld/out/http%3A//Fotherdomain.tld?param%3D0
Así .htaccess toma el enlace e intenta volver a dirigir, pero debido al signo de interrogación del .htaccess "piensa" todo atrás el signo de interrogación es un QUERY_STRING.
El problema: apache2 no edita el código QUERY_STRING. Entonces, ¿qué sucede es que htaccess redirige a
http://otherdomain.tld?param%3D0
que fallará.
Así que mi pregunta es:
¿Cómo puedo saber .htaccess a cualquiera urldecode el QUERY_STRING o utilizar la dirección URL solicitada completo (ya sea urlendcoded o serán decodificados) incluyendo la parte que sigue al signo de interrogación
Gracias de ¡avanzar!
Saludos
que también tienen un problema similar http://stackoverflow.com/questions/8464298/rewrite-and-url-decoding Tampoco podía obtener una respuesta. ¿Lo has resuelto? – dstonek