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

quiero evitar rescribir carpetas validas en modrewrite

Estas en el tema de quiero evitar rescribir carpetas validas en modrewrite en el foro de Apache en Foros del Web. hola buenas tardes, actualmente desarrolle un sitio , el cual hasta el momento me ah funcionado perfetamente , pero resulta que desarrolle un sistema de ...
  #1 (permalink)  
Antiguo 04/02/2010, 17:03
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años
Puntos: 8
quiero evitar rescribir carpetas validas en modrewrite

hola buenas tardes, actualmente desarrolle un sitio , el cual hasta el momento me ah funcionado perfetamente , pero resulta que desarrolle un sistema de administracion , uso url amigables con mod rewrite, pero cuando trato de acceder a la carpeta del sistema , me toma la variable como un dato para rescribir la url,

actualmente tengo esto

RewriteRule ^([_A-Za-z0-9-]+)/$ /?cat=$1 [L]

de esa manera me rescribe el directorio valido, pero quisiera que no me rescribiera un directorio valido.

buscando por google encontre

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

pero parece que no me funciona, quisiera no rescribir directoriosvalidos , ojala uds me puedan ayudar o dar una idea, ya que sinceramente no eh logrado encontrar una solucion

muchas gracias

Saludos

Att Miguel Lomeli
  #2 (permalink)  
Antiguo 04/02/2010, 17:54
Avatar de luis010182  
Fecha de Ingreso: julio-2009
Ubicación: Argentina - Capital Federal
Mensajes: 382
Antigüedad: 14 años, 9 meses
Puntos: 27
Respuesta: quiero evitar rescribir carpetas validas en modrewrite

Sin no son mucho directorio podrias ponerlos arriba con un condicional y si es igual a la ruta de tu directorio que deja de ejecutar.
Seria algo como esto
#si es distinto a tu directorio hace la RewriteRule a continuacion
RewriteCond %{SCRIPT_NAME} !/ruta/de/tu/directorio/*
RewriteRule ^([_A-Za-z0-9-]+)/$ /?cat=$1 [L]

#Si es mas de un directorio seria asi
# si es diferente a la ruta del directorio1 y a la ruta del directorio2
# entoces ejecuta lo siguiente
RewriteCond %{SCRIPT_NAME} !/ruta/de/tu/directorio1/*
RewriteCond %{SCRIPT_NAME} !/ruta/de/tu/directorio2/*
RewriteRule ^([_A-Za-z0-9-]+)/$ /?cat=$1 [L]

Sin son muchos mas tendrias que buscar alguna expresion regular que te filtro los directorios en cuestion
  #3 (permalink)  
Antiguo 04/02/2010, 19:02
Avatar de duskrow  
Fecha de Ingreso: abril-2008
Mensajes: 267
Antigüedad: 16 años
Puntos: 8
Respuesta: quiero evitar rescribir carpetas validas en modrewrite

hola , muchas gracias por contestar proble el codigo pero no me resulta

lo probe de la siguiente manera

RewriteCond %{SCRIPT_NAME} !/admin/*
RewriteRule ^([_A-Za-z0-9-]+)/$ /?cat=$1 [L]

pero al parecer aun sigue tomando la ruta como variable

muchas gracias de vdd
  #4 (permalink)  
Antiguo 04/02/2010, 19:21
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: quiero evitar rescribir carpetas validas en modrewrite

Debería funcionar usando RewriteCond, de la forma como indicas en el primer mensaje, debes colocarlo justo antes de la regla.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.

Última edición por David; 04/02/2010 a las 20:42
  #5 (permalink)  
Antiguo 04/02/2010, 20:30
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde PHP a Apache

Etiquetas: carpetas, modrewrite
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 07:33.