Foros del Web » Administración de Sistemas » Apache »

htaccess: Escapar caracteres & en %{QUERY_STRING}

Estas en el tema de htaccess: Escapar caracteres & en %{QUERY_STRING} en el foro de Apache en Foros del Web. Hola! No logro redireccionar URL a otro dominio y pasar como parámetro la URL original, ya que no puedo escapar los caracteres et ("&") de ...
  #1 (permalink)  
Antiguo 10/07/2012, 17:20
Avatar de reyesoft  
Fecha de Ingreso: abril-2006
Ubicación: San Rafael, Mendoza
Mensajes: 311
Antigüedad: 18 años
Puntos: 15
Pregunta htaccess: Escapar caracteres & en %{QUERY_STRING}

Hola!

No logro redireccionar URL a otro dominio y pasar como parámetro la URL original, ya que no puedo escapar los caracteres et ("&") de %{QUERY_STRING}.

Paso un ejemplo clarificador:
http://dominio1.com/folder/?param1=a&param2=b
debe redireccionar a
http://dominio2.com/?from=folder/?param1=a%26param2=b
en vez de
http://dominio2.com/?from=folder/?param1=a&param2=b

Ya que el segundo caso, param2 pasa como parámetro y no como parte del parámetro from

Actualmente he logrado esto:
Código PHP:
<IfModule mod_rewrite.c>
  
RewriteEngine On
  RewriteCond 
%{HTTP_HOSTdominio1.com/?$ [NC]
   
RewriteRule ^(.*)$ http://dominio2.com/?from=%{HTTP_HOST}/$1?%{QUERY_STRING} [R=301,L] 
¿Esto es posible hacerlo? Y si es así ¿me tirarían una ayuda? Desde ya muchas gracias!
__________________
Pablo Reyes

Compra/venta saldos PayPal, Skrill, Neteller, Bitcoins, etc.
  #2 (permalink)  
Antiguo 12/07/2012, 02:52
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: htaccess: Escapar caracteres & en %{QUERY_STRING}

vas a tener que explicarte mejor, porque esto no tiene sentido

http://dominio1.com/folder/?param1=a&param2=b
hasta ahi vamos bien... pero redireccionar a

http://dominio2.com/?from=folder/?param1=a%26param2=b

2 querys en la misma url?

no sé si esto te pueda servir
http://www.forosdelweb.com/f58/htacc...8/#post4110559

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 12/07/2012, 12:50
Avatar de reyesoft  
Fecha de Ingreso: abril-2006
Ubicación: San Rafael, Mendoza
Mensajes: 311
Antigüedad: 18 años
Puntos: 15
Respuesta: htaccess: Escapar caracteres & en %{QUERY_STRING}

Cita:
Iniciado por emprear Ver Mensaje
vas a tener que explicarte mejor, porque esto no tiene sentido

http://dominio1.com/folder/?param1=a&param2=b
hasta ahi vamos bien... pero redireccionar a

http://dominio2.com/?from=folder/?param1=a%26param2=b

2 querys en la misma url?

Saludos
Disculpa, ahora que mencionas se presta para confusión:

Lo hago nuevamente:
Paso un ejemplo clarificador:
http://dominio1.com/folder/?param1=a&param2=b
debe redireccionar a
http://dominio2.com/?from=folder/%3fparam1=a%26param2=b (<--bien)
en vez de
http://dominio2.com/?from=folder/?param1=a&param2=b (<--mal)

Gracias por ejemplo que pasas, ya lo había visto por la red, pero en mi caso no sirve porque yo nunca sé que parámetros pasarán. La idea de pasar la URL consultada como parámentro al nuevo dominios, es trackear qué URL están consultando originalmente.

Un saludo y muchas gracias. Si se te ocurre algo más con gusto escucho.
__________________
Pablo Reyes

Compra/venta saldos PayPal, Skrill, Neteller, Bitcoins, etc.
  #4 (permalink)  
Antiguo 12/07/2012, 16:21
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: htaccess: Escapar caracteres & en %{QUERY_STRING}

Bueno, muy claro tampoco me queda. te explico

tenemos esto
http://dominio1.com/folder/?param1=a&param2=b
un url de un dominio en una carpeta específica llamada "folder"

y queres que eso redirija a otro dominio
http://dominio2.com/ --> A
que debe recibir tambien como query, la query del primero
param1=a&param2=b -->B
agregado como prefijo la cadena "folder/?" --> C
es decir
A+C+B

Aqui ya tengo una duda el valor "folder" cambia o siempre es el mismo?
Escapar los simbolos en la query? no hace falta, el ? te lo va a escapar el propio apache, y el & no tiene mayor relevancia, en todo caso tu php debería hacer un urlencode() de la string

Para hacer eso, que repito no se si estoy seguro de que sea asi

Código Apache:
Ver original
  1. RewriteEngine On
  2. RewriteRule ^folder/(.*)$     http://dominio2.com/?from=folder/?$1 [L,QSA]

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Etiquetas: htaccess
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.