Назад | Перейти на главную страницу

приложение rails (через прокси-сервер apache) отсутствует изображения из каталога загрузок

Я бегаю Gitlab обратное проксирование через сервер Apache 2.2 для моей рабочей группы. Недавно мы хотели загрузить несколько логотипов групп, чтобы использовать их в качестве аватаров проекта. Все загрузки завершились успешно (подтверждено в списке каталогов через SSH), но изображения так и не появились - вместо этого мы получили только 404.

Мы используем Apache mod_proxy для подключения к бэкэнду Unicorn.

На самом деле у меня тоже была эта проблема. Вам необходимо включить статические активы в вашем config. Поскольку Gitlab был разработан для работы с Apache, они отключили совместное использование статических ресурсов Unicorn. Чтобы включить его, просто запустите sudo -u git vim /home/git/gitlab/config/environments/production.rb и примерно в строке 12 измените config.serve_static_assets к истине.

Оказывается, пример конфигурации Apache Gitlab что мы изначально использовали (более года назад) отсутствовала проверка наличия файлов, прежде чем он вернется на сервер Unicorn, а также отсутствовали директивы, запрещающие проксировать определенные каталоги (например, /uploads), но сервер Unicorn не был настроен для обслуживания этих файлов.

Обновление конфигурации Apache для соответствия новейшая версия образца исправил проблему.