Ejemplo:
En el .htaccess:
RewriteRule ^test/?(.*)$ ./index.php?action=insert&data=$1 [QSA]
En el xx.php
$url=urlencode( $content );
y su correspondiente:
$data = urldecode( $_GET['data']);
Bien, ahora suponga que $content sea una página como:
http://xx.php/test/The good, the bad & the ugly
El urlencode lo codifica correctamente, pero el URL Rewrite lo parsea mal, y cuando verificamos el contenido de $data, este contiene solamente:
The good, the bad
La mejor solución que encontré ha sido incluir la tag "B" en el .htaccess, en la regla correspondiente.
Entonces, donde había:
En el .htaccess:
RewriteRule ^test/?(.*)$ ./index.php?action=insert&data=$1 [QSA]
Cambiamos por
RewriteRule ^test/?(.*)$ ./index.php?action=insert&data=$1 [QSA,B]
Extremadamente simple, pero me ha tomado dos días encontrarle la vuelta!!!!!
sPohlmann
No hay comentarios:
Publicar un comentario