Foros del Web » Programación para mayores de 30 ;) » RegExp »

[SOLUCIONADO] Direccionar url con palabra exacta en htaccess

Estas en el tema de Direccionar url con palabra exacta en htaccess en el foro de RegExp en Foros del Web. Hola veran en mi htacces tengo esto RewriteRule ^es index1.php RewriteRule ^esfera index2.php si pongo www.dominio.com/es me envia al index1 y tambien si pongo www.dominio.com/esfera ...
  #1 (permalink)  
Antiguo 01/07/2014, 22:55
 
Fecha de Ingreso: agosto-2012
Ubicación: M.
Mensajes: 2.031
Antigüedad: 9 años, 3 meses
Puntos: 52
Direccionar url con palabra exacta en htaccess

Hola veran
en mi htacces tengo esto


RewriteRule ^es index1.php
RewriteRule ^esfera index2.php

si pongo
www.dominio.com/es
me envia al index1 y tambien si pongo
www.dominio.com/esfera me envia al index1

¿como hago para que me mande al 2 cuando ponga esfera?

soy nuevo en esto
de antemano gracias
tiene que ver con que inicia con es.
pero no se como decirle exactamente que me la agarre exacta
estaba viendo esto http://www.cristalab.com/tutoriales/...-php-c101020l/ pero aun no me sale
de antemano gracias
__________________
a veces creemos que es algo básico pero al profundizar nos damos cuenta que estábamos tocando solo la cola de la culebra
  #2 (permalink)  
Antiguo 02/07/2014, 11:06
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Direccionar url con palabra exacta en htaccess

Lo que pasa es que como 'esfera' coincide con '^es', la primera regla actúa antes de que la otra se pueda procesar.

Ya que las reglas se procesan en orden, la solución es poner las reglas más específicas antes de las menos, y agregar el modificador L para que si alguna URL coincide con esa regla, no se sigan procesando las demás.

O sea, lo siguiente:
Código Apache:
Ver original
  1. RewriteRule ^esfera index2.php [L]
  2. RewriteRule ^es index1.php [L]

También podrías intentar limitar lo que se compara usando el metacaracter de fin de línea ($) en la primera regla, de forma que quede
^es$
y coincida, por tanto, con la cadena exacta 'es' y no con algo que simplemente empiece con 'es'

Para más información sobre RewriteRule, ve a la documentación oficial:
https://httpd.apache.org/docs/2.2/mo...ml#RewriteRule

Etiquetas: direccionar, htaccess, palabra, url
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 04:13.