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

Problema con RewriteBase/ de Htaccess

Estas en el tema de Problema con RewriteBase/ de Htaccess en el foro de Apache en Foros del Web. Buenas noches, haber si me dan una mano.. hice una regla htacces para crear carpetas "imaginarias" pero tengo un problema.. Código HTML: RewriteEngine on RewriteBase ...
  #1 (permalink)  
Antiguo 25/06/2008, 20:53
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Exclamación Problema con RewriteBase/ de Htaccess

Buenas noches,
haber si me dan una mano..

hice una regla htacces para crear carpetas "imaginarias" pero tengo un problema..

Código HTML:
RewriteEngine on
RewriteBase /

RewriteRule ^Users/(.*) user.php?id=$1
lo que me sucede es que me toma esa carpeta imaginaria como una carpeta real, y los link e imagenes y demas, no se muentran o van a direcciones erroreas..

Ejemplo.

.com/Users/Pepe
.com/user.php?name=Pepe

hasta aca todo OK,

pero si en user.php tengo un link ./contacto.php
el link se dirige a:

.com/Users/contacto.php en lugar de:
.com/contacto.php


que solucion le doy a esto??
Muchas Gracias!!
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #2 (permalink)  
Antiguo 25/06/2008, 21:47
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 1 mes
Puntos: 2534
Respuesta: Problema con RewriteBase/ de Htaccess

debes agregar otra condicional... por si es archivo o si es directorio...

Código:
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} !-d
-f es archivo
!-d NO es carpeta

si le pones el signo de exclamación ! se toma como negación...

con solo agregar la regla de !no es directorio antes de tu regla habitual bastaría... suerte!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 25/06/2008, 22:02
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Problema con RewriteBase/ de Htaccess

Tema trasladado a Apache.
  #4 (permalink)  
Antiguo 26/06/2008, 07:28
Avatar de McBlink  
Fecha de Ingreso: noviembre-2006
Ubicación: $ARG->LaPampa()
Mensajes: 1.694
Antigüedad: 17 años, 5 meses
Puntos: 23
Exclamación Respuesta: Problema con RewriteBase/ de Htaccess

Buenos dias,
gracias por tu respuesta pateketrueke,

pero me sigue tomando la carpeta como una real..

Código HTML:
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^Users/(.*) user.php?id=$1
los link me siguen dirigiendo a:

.com/Users/link.php en lugar de:
.com/link.php

hay algo mal en el codigo??
Muchas gracias!
__________________
Recuerda usar el highlight para mostrar código
mauricioblint.com
  #5 (permalink)  
Antiguo 26/06/2008, 08:30
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 2 meses
Puntos: 55
Respuesta: Problema con RewriteBase/ de Htaccess

No es un problema del .htaccess sino de tu código. Si el navegador está en .com/Users/algo.php y los enlaces que pones son del tipo ./otra.php, entonces el navegador buscará esa página en .com/Users/otra.php

La solución es tan simple como usar rutas absolutas en vez de relativas. En este ejemplo, basta eliminar el . del enlace, es decir, que el enlace sería a la página /otra.php y el navegador entonces la buscará en .com/otra.php

El . lo que hace es indicar al navegador que busque la página en el mismo directorio donde está, pero es que el navegador no sabe si el directorio es "real" o no... claro que le da igual, para él simplemente es algo que sí existe.

Un saludo
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
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

SíEste tema le ha gustado a 1 personas




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