Я новичок в Symfony, поэтому надеюсь, что мой вопрос не будет слишком глупым и достаточно точным, чтобы получить помощь.
Итак, я использую Symfony 3.1.10 на сайте, который был разработан другим человеком, и я не могу получить много информации об этой стороне. Вчера, из-за небольшой проблемы с рендерингом представлений, я выполнил «волшебную» команду «cache: clear --no-warmup», которая прошла нормально. Но теперь я получаю 404 ошибки при попытке доступа к некоторым изображениям, расположенным в: /media/cache/resolve/avatar/uploads/product/5ab37697e4da2.jpg.
На первый взгляд, вам это кажется нормальным? Я что-то сделал не так?
Мне кажется, что я стер с помощью предыдущей команды некоторые кешированные файлы (изображения, здесь), и symfony не замечает этого, поэтому он не будет их повторно кэшировать и все равно пытается получить к ним доступ через кеш?
Чтобы ответить на следующие вопросы:
- Мой файл liip_imagine.yml (включенный в файл config.yml) очень прост:
liip_imagine:
resolvers:
default:
web_path: ~
filter_sets:
cache: ~
avatar:
quality: 75
filters:
thumbnail: { size: [75, 75], mode: outbound }
thumbnail:
quality: 75
filters:
thumbnail: { size: [120, 90], mode: outbound }
middle:
quality: 75
filters:
thumbnail: { size: [240, 180], mode: outbound }
normal:
quality: 75
filters:
thumbnail: { size: [800, 600], mode: outbound }
cover:
quality: 75
filters:
thumbnail: { size: [1200, 300], mode: outbound }
relative_thumbnail:
filters:
relative_resize: { widen: 160 }
Спасибо,
Оливье.
Да, я "мог бы" использовать LiipImagineBundle, я должен это проверить, но я полагаю, что вы правы в этом. Кстати, попытка прямого доступа к пути с помощью /avatar/uploads/product/5ab37697e4da2.jpg или /resolve/avatar/uploads/product/5ab37697e4da2.jpg завершилась с ошибкой 404 http.
Проверьте конфигурацию этого пакета. Есть путь к файлам, если хранилище не было в каталоге кеша, все должно быть в порядке. Попробуйте также запустить cache: clear без -no-warmup, попробуйте удалить var / cache / dev, чтобы посмотреть, поможет ли это. Если нет, вам нужно будет опубликовать конфигурацию этого пакета
Привет, M.Kebza, описал, что я нашел благодаря своим знаниям о Symfony. Надеюсь, это поможет вам помочь мне;)
Не работал несколько дней, конфигурация выглядит нормально. Но если вы не можете найти изображения в файловой системе даже по имени, возможно, они больше не существуют. Последнее изменение - попытаться переключиться в режим разработки и получить доступ к /media/cache/resolve/avatar/uploads/product/5ab37697e4da2.jp g и посмотреть, что он показывает, но я думаю, он покажет отсутствующий файл.


Если все настроено правильно, кэшированные данные должны при необходимости автоматически регенерироваться. Если вы получили 404, значит, этого не происходит.
Если вы получаете сообщение об ошибке даже при попытке доступа к исходному (не кэшированному) файлу, проблема заключается в следующем: исходный файл отсутствует, сайт работал благодаря кэшированным изображениям, но теперь они тоже исчезли.
Если это не так, лучше всего проверить var/logs/prod.log, чтобы увидеть, что не так при создании кэшированных изображений.
Я создал маршруты и прочее (прокси для сущностей доктрины и многое другое). У вас есть причина, по которой использовать без разминки? Затем из пути в файлах похоже, что вы используете github.com/liip/LiipImagineBundle для изображений, я бы попытался получить доступ к пути напрямую и посмотреть, какую ошибку я получаю (попробуйте войти в /var/log/dev.log)