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

RewriteRule afecta enlaces posteriores

Estas en el tema de RewriteRule afecta enlaces posteriores en el foro de Apache en Foros del Web. Buen día, con una molestia más. Estoy utilizando el fichero .htaccess para hacer URL's amigables para los buscadores. Entonces, quiero que una url del siguiente ...
  #1 (permalink)  
Antiguo 05/07/2014, 22:03
Avatar de hey_alan  
Fecha de Ingreso: diciembre-2006
Ubicación: México
Mensajes: 348
Antigüedad: 18 años
Puntos: 8
RewriteRule afecta enlaces posteriores

Buen día, con una molestia más.

Estoy utilizando el fichero .htaccess para hacer URL's amigables para los buscadores. Entonces, quiero que una url del siguiente tipo:

Código:
www.misitio.com/portafolio/
www.misitio.com/blog/cat/100
ww.misitio.com/blog/entry/12345/nombre-de-la-entrada
Esto llama al fichero "index.php" de la raíz (y procesaré los parámetros con REQUEST_URI):

Código:
www.misitio.com/index.php
Por lo tanto, he escrito la siguiente expresión:

Código PHP:
Ver original
  1. RewriteCond %{REQUEST_FILENAME} !-d
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3.  
  4. RewriteRule ^(.+)/ index\.php [QSA,L]

Sin embargo, al realizar el redireccionamiento la página no se muestra correctamente, los enlaces se modifican.

Por ejemplo, un enlace que originalmente era:

Código:
www.misitio.com/images/
ahora trata de accesder de la siguiente manera, por ejemplo:

Código:
www.misitio.com/portafolio/images/
¿Saben cómo puedo arreglarlo? ¡Muchísimas gracias!
__________________
Alan Marth Media

Diseño web y Publicidad en Morelia, Michoacán
  #2 (permalink)  
Antiguo 06/07/2014, 06:03
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: RewriteRule afecta enlaces posteriores

Tienes que usar paths absolutos:

Código Apache:
Ver original
  1. RewriteCond %{REQUEST_FILENAME} !-d
  2. RewriteCond %{REQUEST_FILENAME} !-f
  3.  
  4. RewriteRule ^(.+)/?$ /index\.php [QSA,L]
  #3 (permalink)  
Antiguo 06/07/2014, 18:20
Avatar de hey_alan  
Fecha de Ingreso: diciembre-2006
Ubicación: México
Mensajes: 348
Antigüedad: 18 años
Puntos: 8
Respuesta: RewriteRule afecta enlaces posteriores

Muchas gracias.

Por supuesto, en una opción, pero eso requeriría una reestructuración completa del sitio y me parece bastante trabajoso. Además, considerando que administro el sitio tanto local como en línea, no podría trabajar de la misma manera.

He encontrado la siguiente etiqueta que soluciona medianamente mi problema:

Código PHP:
Ver original
  1. echo '<base href="'.$baseUrl.'" />';

Y al parecer los enlaces ya funcionan correctamente y las imágenes cargan bien, salvo ciertos aspectos que no (códigos javascript, por ejemplo). También me preocupa el asunto sobre qué tan válido sea para los motores de búsquera (que es la principal razón por la que cambié a este esquema).

Podría asignar el path en una variable y apartir de ahí general todo el contenido en base a ésta, pero eso significaría generar los archivos .css también mediante PHP y se hará un relajo.

¿Existe otro método que no haya mencionado? ¿Qué me recomendarían ustedes? ¿Cómo maneja esto ForosDelWeb?

Muchísimas gracias.
__________________
Alan Marth Media

Diseño web y Publicidad en Morelia, Michoacán
  #4 (permalink)  
Antiguo 07/07/2014, 05:23
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 11 años, 3 meses
Puntos: 578
Respuesta: RewriteRule afecta enlaces posteriores

Lo puedes utilizar sin problemas, no afecta al SEO.

Etiquetas: htacces
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 20:53.