Tengo un archivo .htaccess que se asigna a .htaccess reescritura rompe rutas relativas
http://www.myserver.com/home/
http://www.myserver.com/index.php?section=home
Esta parte funciona bien. El problema que estoy enfrentando ahora es, todas mis imágenes y CSS residen en un activo subcarpeta con nombre, es decir
http://www.myserver.com/assets/images/
http://www.myserver.com/assets/css/etc.
Después de redirección del navegador buscará los archivos bajo
http://www.myserver.com/home/assets/images/la que hace que las cosas se rompen, como este no es un camino válido
he podido añadir otra reescritura que mapea los anteriores a la sub-carpeta correcta, sin embargo, Firebug muestra que las imágenes residen en:
http://www.myserver.com/home/assets/images/
Yo sé que no es realmente un problema, después de todo, mis imágenes y CSS están cargando bien con esta regla. Tengo curiosidad sobre cómo puedo hacer que la ruta sea la ruta real, que es:
http://www.myserver.com/assets/images/
Pegando mi archivo htaccess a continuación. Muchas gracias de antemano.
Options +FollowSymlinks
RewriteEngine on
RewriteRule ^([^/]+)/assets/(css|images|js)/(.*)$ /assets/$2/$3 [NC,L]
RewriteRule ^([^/]+)/$ /index.php?section=$1 [NC,L]
yo estaba tratando de no tener que ir por el camino de la conversión de todos mis rutas relativas a la absoluta, pero por desgracia, me podría tener que ahora. ¡De nuevo, me olvidé por completo de la etiqueta
! Eso funcionó como un encanto. Gracias Gumbo, lo aprecio. – irot@irot: Tenga en cuenta que cambiar el URI base utilizando 'BASE' afecta a * todos * los URI relativos y no solo a aquellos con rutas relativas. – Gumbo
También afecta a las etiquetas de anclaje con hashes. Cualquier etiqueta de anclaje con un atributo href como "#contenido" se resolverá en la URL base y no en la página actual. – VirtuosiMedia