Новый образ не рендерится в Rails 3.1 - PullRequest
0 голосов
/ 28 марта 2012

Я только что добавил новое колесо загрузки на свой сайт в assets / images / loading.gif. GIF работает в разработке, но на производстве браузер отображает значок с разбитым изображением без ошибок. Сервер показывает файл как 0 байтов, но когда я нахожу файл в терминале, я вижу, что это 3.2k. Другие изображения из активов / изображений работают. После поиска я попробовал несколько вещей, включая прекомпиляцию и изменение строк в моей конфигурации, но пока ничего не получилось. Это может быть проблема с разрешениями или кешированием?

Решено:

Проблема была ссылочной проблемой. Я изначально ссылался на GIF в прямом HTML, например, так ...

<img src="assets/loading.gif" id="loading-indicator" style="display:none" />

но когда я использовал image_tag и изменил путь к файлу, он теперь работает.

<%= image_tag("loading.gif", :id => "loading-indicator", :style => "display:none") %>

Не уверен, почему это сработало на моем локальном компьютере.

1 Ответ

0 голосов
/ 31 марта 2012

Эта же проблема произошла со мной после того, как я перешел на Cedar на Heroku, поэтому я предполагаю, что вы используете Heroku для размещения своего приложения Rails 3.1 на Cedar.

Если это так, попробуйте это в файле config / environment / production.rb, закомментируйте следующую строку:

config/environments/production.rb
===================================
...
config.action_dispatch.x_sendfile_header = "X-Sendfile"
...

И замените его новой строкой:

config/environments/production.rb
===================================
...
config.action_dispatch.x_sendfile_header = nil # For Heroku
...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...