私はこのgitlab設定を使用していますhttps://github.com/gitlabhq/gitlab-recipes/blob/master/web-server/apache/gitlab.conf
書き換えログはこちら
125.121.60.59 - - [14/Aug/2014:12:50:23 +0800]
[xxx.xxx.com/sid#7f8e26a023c8][rid#7f8e26ca5be8/initial]
(4) RewriteCond: input='/home/git/gitlab/public/uploads/foo/bar/7b02f4c192/classes.png' pattern='!-f' => matched
かなり確実に/home/git/gitlab/public/uploads/foo/bar/7b02f4c192/classes.png
存在します。
なぜこのパターンが一致したのでしょうか?
答え1
RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
-f
ユーザーが httpd を実行して読み取り可能なファイルが必要です ( apache
CentOS の場合)。
確認するにはsudo -u apache stat /path/to/file