Hallo,
Ik heb een functie in mijn controller om afbeeldingen, wanneer aangeroepen, te verkleinen in de daarvoor bestemde format
vb: img/imagenaam/medium, img/imagenaam/ (geeft standaard small ) etc..
Dit werkt lokaal prima en zoals het hoort. Enkel toen ik gisteren hele mikmak op de productie server ging gooien bleek dat de afbeeldingen veranderen in een (blauwe)vraagteken wat je normaal gesproken krijgt als de afbeelding niet bestaat. Enkel heb ik in die functie ook een controle wanneer afbeelding niet bestaat een melding te geven en wanneer ik de foto's verwijder en ik ga naar de url dan geeft hij dit ook aan i.p.v. de blauwe vraagteken.
Ik heb verder geen errors, foutmeldingen etc en ook in mijn access_log of error_log kan ik niks vreemds ontdekken.. Iemand een idee waar het aan kan liggen?
De boosdoener
<?php
$app->get('/img/{name}/{size}', function($name, $size, Request $request) use ($app) {
$prefix = $app['upload_folder'].'/';
$full_name = $prefix . $name;
$thumb_name = '';
$thumb_width = 320;
$thumb_height = 240;
if ( !file_exists( $full_name ) )
{
throw new \Exception( 'File not found' );
}
switch ( $size )
{
default:
case 'small':
$thumb_name = $prefix . 'small_' . $name;
$thumb_width = 320;
$thumb_height = 240;
break;
case 'medium':
$thumb_name = $prefix . 'medium_' . $name;
$thumb_width = 1024;
$thumb_height = 768;
break;
}
$out = null;
if ( 'original' == $size )
{
$out = new BinaryFileResponse($full_name);
}
else
{
if ( !file_exists( $thumb_name ) )
{
$app['imagine']->open($full_name)
->thumbnail(
new Imagine\Image\Box($thumb_width,$thumb_height),
Imagine\Image\ImageInterface::THUMBNAIL_INSET)
->save($thumb_name);
}
$out = new \Symfony\Component\HttpFoundation\BinaryFileResponse($thumb_name);
}
return $out;
})
->value('size', 'small');
?>
315 views