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

excluir de rewriterule directorio de imagenes

Estas en el tema de excluir de rewriterule directorio de imagenes en el foro de Apache en Foros del Web. Hola a todos. Tengo varias reglas en htaccess. Una de ellas es esta (la que falla realmente) Código PHP: RewriteRule  ^(.*)/(.*)/(.*)/(.*)$ / domen / view / ...
  #1 (permalink)  
Antiguo 01/01/2011, 05:30
 
Fecha de Ingreso: junio-2008
Mensajes: 42
Antigüedad: 15 años, 10 meses
Puntos: 3
excluir de rewriterule directorio de imagenes

Hola a todos.

Tengo varias reglas en htaccess.
Una de ellas es esta (la que falla realmente)
Código PHP:
RewriteRule ^(.*)/(.*)/(.*)/(.*)$ /domen/view/index.php?parent=$1&section=$2&object=$3&sectionname=$[L
La regla funciona, pero no se estan mostrando las imagenes. Segun mi investigacion apache esta intentando aplicar el reglamento arriba mencionado para las urls de las imagenes ya que se corresponden con el patron.

Las urls de las imagenes las tengo completas asi (ejemplo)

http://domen/images/2011/1/imagen.jpg

He cambiado la regla intentando excluir directorio de imagenes asi

Código PHP:
RewriteRule ^(.*(!images))/(.*)/(.*)/(.*)$ /plugsound/view/index.php?parent=$1&section=$2&object=$3&sectionname=$[L
pero no es correcto, ya se que sale 404 error.

No soy experta en expresiones regulares. Alguien me puede ayudar?

Muchissimas gracias.
  #2 (permalink)  
Antiguo 01/01/2011, 13:51
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: excluir de rewriterule directorio de imagenes

Cita:
La regla funciona, pero no se estan mostrando las imagenes. Segun mi investigacion apache esta intentando aplicar el reglamento arriba mencionado para las urls de las imagenes ya que se corresponden con el patron.
Efectivamente

Cita:
He cambiado la regla intentando excluir directorio de imagenes asi

Código PHP:
RewriteRule ^(.*(!images))/(.*)/(.*)/(.*)$ /plugsound/view/index.php?parent=$1&section=$2&object=$3&sectionname=$[L
pero no es correcto, ya se que sale 404 error.
Mejor usar un RewriteCond, algo como esto (dependerá de dónde tengas las imágenes, pones el directorio que sea en el RewriteCond):

Código Apache:
Ver original
  1. RewriteCond %{REQUEST_URI} !^/images.*$ [NC]
  2. RewriteRule ^(.*)/(.*)/(.*)/(.*)$ /domen/view/index.php?parent=$1&section=$2&object=$3&sectionname=$4 [L]

Así "ejecuta" el RewriteRule sólo si satisface la RewriteCond, es decir, todo lo que no esté en el directorio /images

__________________
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.
  #3 (permalink)  
Antiguo 02/01/2011, 13:53
 
Fecha de Ingreso: junio-2008
Mensajes: 42
Antigüedad: 15 años, 10 meses
Puntos: 3
Respuesta: excluir de rewriterule directorio de imagenes

Muchissimas gracias! Asi funciona menos mal.
  #4 (permalink)  
Antiguo 02/01/2011, 19:20
 
Fecha de Ingreso: diciembre-2009
Ubicación: dirname(__FILE__)
Mensajes: 149
Antigüedad: 14 años, 4 meses
Puntos: 11
Respuesta: excluir de rewriterule directorio de imagenes

ferny, perdona la desesperación, pero tu ves algún error en este código?

Código Apache:
Ver original
  1. <ifmodule mod_rewrite.c>
  2.  
  3. # Iniciar el módulo de reescritura de urls.
  4. Options +FollowSymLinks
  5. RewriteEngine On
  6.  
  7. # En el caso de que sean archivos
  8. RewriteRule ^arkivo/(.+)/(.+)/(.+)\.(js|ico|gif|jpg|png|css|pdf|txt|xml)$ sitios/$1/archivos/$2.$4 [L,NC]
  9.  
  10. # Redirije todo el resto al archivo index.php
  11. RewriteCond &#37;{REQUEST_URI} !^arkivo [NC]
  12. RewriteRule ^(.+)$ index.php?parametros=$1 [L,QSA]
  13.  
  14. </ifmodule>

Quiero que por ejemplo:
dominio.com/arkivo/14/1/mi_fotito.png => dominio.com/sitios/14/1.png

Y que cualquier otra cosa:
dominio.com/es/Sobre_nosotros => dominio.com/index.php?parametros=es/Sobre_nosotros

Pero no me funciona así, porque?
("=>" es por interno, no redirección)

Última edición por RodrigoG; 02/01/2011 a las 19:26
  #5 (permalink)  
Antiguo 02/01/2011, 22:56
 
Fecha de Ingreso: diciembre-2009
Ubicación: dirname(__FILE__)
Mensajes: 149
Antigüedad: 14 años, 4 meses
Puntos: 11
Respuesta: excluir de rewriterule directorio de imagenes

Siiiiiiiiiiiii!!!!!!!

son las 1:53 de la madrugada y por fin encontré la solución, es algo muy pero muy tonto

[L,NC] => [NC,L]

Nada más, no tenía idea que el orden importaba, resulta que [L] indica que si cumple e patrón no siga intentando (termine ahí), pero tenía que estar al final.

Espero que a nadie le pase eso.
Saludos
- y perdón por meterme en este tema ;)

Etiquetas: directorio, excluir, imagenes, rewriterule
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 11:20.