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

rewriterule y espacios

Estas en el tema de rewriterule y espacios en el foro de Apache en Foros del Web. Hola, primero que nada saludaros ya que come me dice el mensaje de bienvenida soy el forero mas joven de esta comunidad, aunque llevo tiempo ...
  #1 (permalink)  
Antiguo 13/01/2012, 04:06
 
Fecha de Ingreso: enero-2012
Ubicación: Alzira, Valencia
Mensajes: 90
Antigüedad: 12 años, 3 meses
Puntos: 5
rewriterule y espacios

Hola, primero que nada saludaros ya que come me dice el mensaje de bienvenida soy el forero mas joven de esta comunidad, aunque llevo tiempo leyendo... No he encontrado ningún sitio de Bienvenida por lo que escribo aquí mi primer mensaje.

Tengo un problema con rewriterule y los espacios. Mi archivo .htaccess:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^(.*).html regalos_publicitarios/producto.php?productoid=$1
</IfModule>


La URL se lanza correctamente ya que para las siguientes URL´s las encuentra sin problemas:

dominio/regalos_publicitarios/2.html
dominio/regalos_publicitarios/boligrafos.html

Incluso la palabra bolígrafos que tiene acento y la primera con mayúscula la encuentra. Lo que sucede es que cuando tengo un espacio es decir:

$1=Bolígrafo Green

Con esta variable yo lanzo:

dominio/regalos_publicitarios/boligrafo-green.html

y no la encuentra, sin embargo si lanzo el espacio o el %20 si que lo encuentra:

dominio/regalos_publicitarios/boligrafo green.html
dominio/regalos_publicitarios/boligrafo%20green.html

Posiblemente sea una idiotez pero llevo más de 7 horas con este error y no lo encuentro por ningun sitio. Decir que mi hosting es 1&1.

Muchísimas gracias!!!
  #2 (permalink)  
Antiguo 13/01/2012, 05:37
 
Fecha de Ingreso: enero-2012
Ubicación: Alzira, Valencia
Mensajes: 90
Antigüedad: 12 años, 3 meses
Puntos: 5
Respuesta: rewriterule y espacios

Hola, finalmente lo he solucionado. No de la manera que quería pero también valida. He modificado el .htaccess de la siguiente manera:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteRule ^(.*)-(.*).html regalos_publicitarios/producto.php?nombre=$1&productoid=$2
</IfModule>

El campo productoid solo sera numérico y solo buscara en mysql ese campo. De esta manera no tendre problemas en repetir nombres. Aunque la solución no me la ha dado ningún forero. La he visto fijándome en la URL del foro.

Muchas gracias de todos modos.

Etiquetas: espacios, rewriterule
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 20:29.