Изображение платформы Symfony2 не отображается

У меня есть изображение на нашем веб-сайте, которое нам пришлось изменить, так как это было изображение .ico, которое широко не поддерживается в таких браузерах, как Google Chrome. Это было также тихо большой, так что нужно было уменьшить в размере. Поэтому мы изменили изображение на info-icon.png, а не на server-image.ico.

Итак, теперь, когда мы это изменили, выполните следующие команды:

php app/console assetic:dump --env=prod --no-debug
php app/console assets:install ../web --env=prod --no-debug
php app/console cache:clear --env=prod --no-debug
php app/console cache:warmup --env=prod --no-debug

Все вернулись нормально и не сообщили ни о каких проблемах. Когда мы заходим на наш сайт и смотрим на исходный код, мы видим, что URL-адрес изображения изменился на info-icon.png, однако ссылка представляет собой код ошибки 404. Код веточки для изображения ниже:

{% image output="/images/info-icon.png"'@MyBundle/Resources/public/images/info-ico.png'
%}
<img src="{{ asset_url }}" alt="">
{% endimage %}

Постскриптум Имя изображения — info-ico.png Это не опечатка, мы хотели показать изображение под другим именем. Это также в производственном режиме.

Если кто-то заинтересован, это код для сборки конфигурации:

assetic:
debug:          "%kernel.debug%"use_controller: false
bundles:        [ 'MyBundle' ]
node: /usr/bin/nodejs
#java: /usr/bin/java
filters:
cssrewrite: ~
uglifycss:
bin: /usr/local/lib/node_modules/uglifycss/uglifycss
no_copyright: true
#apply_to: ['.css$']
uglifyjs2:
bin: /usr/local/lib/node_modules/uglify-js/bin/uglifyjs
no_copyright: true
#apply_to: ['.js$']
optipng:
bin: /usr/bin/optipng
apply_to: "\.png$"jpegtran:
bin: /usr/bin/jpegtran
apply_to: ['.jpe?g$']
progressive: true

Я также попытался очистить кеш вручную, используя символическую ссылку на актив: установить команду, и, похоже, ничего не работает. У кого-нибудь есть идеи?

2

Решение

Проблема была в сборке: команда dump и неправильная конфигурация.

Я запускал команду с параметром —no-debug, поэтому я не мог видеть, что происходит, однако я получал случайные символы, появляющиеся при выполнении этой команды. Команда выводила кодировку PNG, так как модули для оптимизации изображений JPEG и PNG не были установлены на рабочем сервере, поэтому просто удалите их из файла конфигурации, а затем очистите кэш и прогрейте кеш. Затем я снова запускаю команду сборку: дамп, который решил проблему.

1

Другие решения

Других решений пока нет …