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

htacces no toma regla

Estas en el tema de htacces no toma regla en el foro de Apache en Foros del Web. Un gran saludo para todos, es que estoy realizando una regla pero en htacces, pero no me la toma. la url es esta medellin/negocio.php?titulo=tecnidicol la ...
  #1 (permalink)  
Antiguo 12/07/2013, 19:02
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
htacces no toma regla

Un gran saludo para todos, es que estoy realizando una regla pero en htacces, pero no me la toma.

la url es esta
medellin/negocio.php?titulo=tecnidicol

la regla htacces es esta.
RewriteRule ^medellin/(.*)$ /medellin/negocio.php?titulo=$1 [L]

el resultado final que deseo es.
medellin/tecnidicol

pero ingreso normal por dominio.com/medellin/negocio.php?titulo=tecnidicol y no hace nada.

si alguien me puede guiar le agradezco.

saludos
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #2 (permalink)  
Antiguo 12/07/2013, 19:51
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 13 años, 2 meses
Puntos: 48
Respuesta: htacces no toma regla

Podrias explicar un poquito mejor :)

Quieres que cuando ingresen medellin/tecnidicol te ejecute o redireccione a /medellin/negocio.php?titulo=tecnidicol o al revés???
__________________
Rodrigo Agüero
  #3 (permalink)  
Antiguo 12/07/2013, 19:54
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: htacces no toma regla

hola y gracias por responder, la url que hay actual es esta.
medellin/negocio.php?titulo=tecnidicol

la que requiero es esta
medellin/tecnidicol

gracias
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #4 (permalink)  
Antiguo 12/07/2013, 20:16
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 13 años, 2 meses
Puntos: 48
Respuesta: htacces no toma regla

Con la regla actual tienes un bucle.

RewriteRule ^medellin/(.*)$ /medellin/negocio.php?titulo=$1 [L]

Asi estas diciendo:
Redireccioname cualquier enlace que empiece con medellin/ a medellin/negocio.php pero medellin/negocio.php empieza con medellin/ entonces vuelve a hacer lo mismo infinitamente.
__________________
Rodrigo Agüero
  #5 (permalink)  
Antiguo 12/07/2013, 20:26
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: htacces no toma regla

hola muchas gracias por tu respuesta, pero entonces sería asi.

RewriteRule ^medellin/(.*)$ negocio.php?titulo=$1 [L]

porque si es esta no me funciona.

slaudos y nuevamente gracias
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #6 (permalink)  
Antiguo 12/07/2013, 20:28
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 13 años, 2 meses
Puntos: 48
Respuesta: htacces no toma regla

negocio.php esta dentro de una carpeta medellin o esta en la base(public_html) ???
__________________
Rodrigo Agüero
  #7 (permalink)  
Antiguo 12/07/2013, 20:29
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: htacces no toma regla

hola esta dentro de la carpeta medellin.

saludos
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #8 (permalink)  
Antiguo 12/07/2013, 20:37
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 13 años, 2 meses
Puntos: 48
Respuesta: htacces no toma regla

Prueba esto:
RewriteRule ^medellin/(?!negocio)(.*)$ /medellin/negocio.php?titulo=$1 [L]

Cuando se ingrese medellin/algodistintodenegocio ejecutara el archivo /medellin/negocio.php?titulo=algodistintodenegocio

Prueba haciendo una redireccion 301 a google por si no te funciona y vas probando.
RewriteRule ^medellin/(?!negocio)(.*)$ http://www.google.com [R=301,L]
__________________
Rodrigo Agüero
  #9 (permalink)  
Antiguo 12/07/2013, 20:53
Avatar de andreshenao  
Fecha de Ingreso: enero-2009
Ubicación: Medellìn
Mensajes: 417
Antigüedad: 15 años, 10 meses
Puntos: 7
Respuesta: htacces no toma regla

hola gracias, pero la cuestion es que los usuarios ingresan es por esta url
/medellin/negocio.php?titulo=tecnidicol

y necesito que el .htacces me la convierta a /medellin/tecnidicol y que sea la que el usuario vea.


saludos
__________________
-----------------
Hosting Medellin
Diseño web medellin
  #10 (permalink)  
Antiguo 12/07/2013, 21:11
Avatar de Rodrhigo  
Fecha de Ingreso: septiembre-2011
Ubicación: Temuco-Valdivia-Osorno
Mensajes: 254
Antigüedad: 13 años, 2 meses
Puntos: 48
Respuesta: htacces no toma regla

Pero eso se hace cuando imprimes tus enlaces.

<a href='/medellin/tecnidicol'>Ir a tecnidicol</a>

Y cuando el usuario abra ese enlace estara cargando el contenido /medellin/negocio.php?titulo=tecnidicol

Los usuarios tienen que ingresar por /medellin/tecnidicol y no al revés.


Ahora si quieres seguir así, prueba este código pero no te garantizo que te funcione a la primera:

RewriteRule ^medellin/negocio.\php\?(?!escape=1&)titulo=(.*)$ /medellin/$1 [R=301, L]
RewriteRule ^medellin/(?!negocio)(.*)$ /medellin/negocio.php?escape=1&titulo=$1 [L]

Lo que hace o debiera hacer es:

- Usuario ingresa a /medellin/negocio.php?titulo=tecnidicol Lo redirecciona a /medellin/tecnidicol .

- Carga la url /medellin/tecnidicol y ejecuta la regla 2, osea carga el archivo /medellin/negocio.php?escape=1&titulo=$1

- Como existe la variable escape(?!escape=1&), NO vuelve a ejecutar la regla 1 y , de esta manera, evita el bucle infinito.
__________________
Rodrigo Agüero

Etiquetas: htacces, php, regla, seo, toma, 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 14:41.