2011-11-04 26 views
6

Estoy buscando servir dinámicamente imágenes a páginas web con htaccess en función del nombre de archivo en la url. Normalmente, utilizo una estructura de directorios anidados en todo mi sitio web para publicar una url dinámica basada en los nombres de pseudo directorio. En este caso, me gustaría simplemente para consultar el nombre del archivo (sans extensión) y servir a un script PHP de forma que:urls dinámicas jpg con .htaccess

 
/images/foo.jpg 

convierte

 
/images/index.php?image=foo 

al mismo tiempo permitir que las imágenes JPG existentes en este directorio ser servido. Estoy seguro de que es fácil, ya que he podido lograr algunas cosas muy interesantes con htaccess, pero aún no esta. Gracias.

+0

¿Qué quiere decir con "a la vez que dejar que las imágenes JPG existentes en este directorio serán servidos"? ¿Eso significa que foo.jpg no existe y debería ser redirigido a index.php, pero las imágenes que existen en/images/deberían ser servidas como lo harían normalmente? –

+0

exactamente. Necesito crear jpgs 'fantasmas' que se alimenten de php y permitan que los originales existan como lo hacen. – Lucas

Respuesta

10

así:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^images/(.*)\.(jpg|png|jpeg|gif)$ /images/index.php?image=$1 [NC,L] 

nota: si usted necesita la extensión que utiliza $2

+0

esto funciona cuando el archivo existe, pero cuando no, obtengo un 404 ... quiero poder crear jpgs 'fantasmas' y también servir los archivos originales sin tener que sacarlos de php. – Lucas

+0

todas las imágenes se guardan en la carpeta de imágenes? si quieres crear una imagen 'fantasma' es diferente. Actualicé mi boleto. ¿Index.php muestra los encabezados correctos para las imágenes? –

+0

no, algunos lo son y otros no ... Quiero alimentar nombres de imágenes seo-friendly para mi sistema de archivos que es alfanumérico (es decir, DR382U1.jpg) y está situado en otro lugar. – Lucas