Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/08/2009, 04:38
Avatar de juanolo
juanolo
 
Fecha de Ingreso: abril-2008
Mensajes: 251
Antigüedad: 15 años, 11 meses
Puntos: 5
Pregunta Cuestion sobre .htaccess y redirecciones amigables...

Tengo el archivo .htaccess modificado para crear redirecciones amigables de esta manera...

Options +FollowSymLinks
RewriteEngine on
Rewriterule ^perfil/(.*)\.html$ perfil.php?nick_usuario=$1
Rewriterule ^blog/(.*)\.html$ blog.php?nick_usuario=$1
--------------------------------------------------------------------------

Es decir que si yo llamo a la pagina ./perfil/pepito.html realmente cargue la pagina ./perfil.php?nick_usuario=pepito

¿Todo funciona correctamente pero cual es mi problema?
Pues que aunque todas mis paginas estan en la raiz de mi sitio, si yo, con una redireccion le digo algo asi /perfil/loquesea.html.....

....lo toma como direccion real, entonces, los estilos no los carga, porque comparto el mismo head para todas las paginas y en ella tengo puesto el estilo ./css/estilo.css
.......y las paginas que redirijo deberia poner ../css/estilo.css
ya que estan en una "subcarpeta virtual" por asi decirlo, tengo que subir un nivel de carpeta con los dos puntos ../

Seria poco problema si solo fuera el estilo, pero tengo varios menus que todas las paginas comparten, con diferentes enlaces a distintas secciones de la web y segun te encuentres en un nivel u otro tengo que hacer en cada enlace un IF en el que compruebo segun el nivel en el que estas... el enlace te hara ./ o ../ o ../../ segun los niveles de carpeta que tenga que subir.......y eso es un ROLLO.

¿No habria otra manera mas sencilla de hacer los enlaces?
Nose, decirle que aunque en la URL salga ./carpeta/pagina,html......
que realmente detecte que la URL real esta en la raiz ./pagina.html y que todos los enlaces los tome de ahi