Imágenes que no existen, error 404 y htaccess

MrTurbo

Buenas!

Tengo un problemilla:
Tenemos una web con un montón de imagenes que por X o por Y ya no están en el FTP, lo que quiero hacer es que cuando esa imágen no exista (error 404) me devuelva una imagen genérica con cabecera 200.

Lo que tengo hecho es lo siguiente:

.htaccess

<FilesMatch ".(jpg|png|gif)$">
    ErrorDocument 404 /error_imagenes.php
</FilesMatch>

error_imagenes.php

<?php
    $img_path = "HTTP://WEB/IMAGEN_ERROR.GIF";
    $image = imagecreatefromgif($img_path);
    header('HTTP/1.1 201 OK', true, 200); // override the 404 response
    header('Content-Type: image/jpeg');
    flush(); @ob_flush();
    imagejpeg($image);
    flush(); @ob_flush();
    imagedestroy($image);
    exit;
?>

Esto me funciona a las mil maravillas, la imagen que no existe muestra la imagen de error y las caberas me devuelven 201. Lo que pasa es que si pongo 200 en lugar de 201, que es lo que yo quiero, el cabrón me devuelve la imagen de error genérica pero con cabeceras con 404 en lugar de 200.

¿Alguna solución?

LOc0

Prueba a ver:

    <?php
        $img_path = "http://WEB/IMAGEN_ERROR.GIF";
        
$image = imagecreatefromgif($img_path); header('Status: 200'); $_SERVER['REDIRECT_STATUS']=200; header('Content-Type: image/jpeg'); imagejpeg($image); imagedestroy($image); ?>

Salu2 ;)

MrTurbo

Funciona!

Un millón de gracias :-D

1

Usuarios habituales

  • MrTurbo
  • LOc0