Я создал изображение с помощью функции imagejpeg () в моем классе сущностей
$imageSize = $this->_getDefaultImageSize();
$image = imagecreate($imageSize['width'], $imageSize['height']);
imagecolorallocate($image, 54, 175, 105);
header('Content-type: image/jpeg');
imagejpeg($image, $path, null);
imagedestroy($image);
Сразу после этого я возвращаю file_get_contents ($ path) в мой REST API Controller, который отображает его с соответствующим заголовком (например, «Content-type: image / jpeg») на основе расширения изображения, которое сохраняется в базе данных .
Если я отправляю сгенерированный файл, он дает мне заголовок 204, без содержимого. Если я зайду и переименую файл и добавлю новый файл изображения, загруженный из Google с тем же именем, что и ранее, он отправит это изображение с кодом 200. Удалите изображение Google, переименуйте сгенерированный файл в нормальное состояние и попробуйте получить его снова возвращается 204.
Сначала я подумал, что это ошибка разрешения в Linux, я дал разрешение сгенерированному изображению 664 так же, как изображение Google, и оно все еще не работало.
Я также должен добавить, что изображение генерируется правильно и может быть просмотрено через публичный каталог на сервере и через любое приложение для просмотра изображений.
Любые мысли о том, почему изображение, сгенерированное imagejpeg () не будет отправлено в Symfony 3.2 с использованием PHP 7.2?