Apache-2.2

上傳目錄中的rails應用程序(通過apache代理)圖像失去

  • July 23, 2014

我正在通過我的工作組的 Apache 2.2 伺服器反向代理執行Gitlab 。最近,我們想上傳一些組徽標作為項目頭像。上傳全部成功完成(通過 SSH 在目錄列表中確認),但圖像從未出現 - 相反我們只得到 404。

我們正在使用 Apache 的 mod_proxy 連接到 Unicorn 後端。

事實證明,我們最初(一年多前)使用的 Gitlab 範例 Apache 配置在返回 Unicorn 伺服器之前缺少對文件是否存在的檢查,並且還缺少不代理某些目錄的指令(例如/uploads) ,但 Unicorn 伺服器未配置為提供這些文件。

更新 Apache 配置以匹配最新的範例版本解決了該問題。

其實我也有這個問題。您需要在配置中啟用靜態資產。由於 Gitlab 設計為與 Apache 一起執行,因此他們關閉了 Unicorn 的靜態資產共享。要啟用它,只需執行sudo -u git vim /home/git/gitlab/config/environments/production.rb並在第 12 行左右更改config.serve_static_assets為 true。

引用自:https://serverfault.com/questions/601088