我正在使用這個 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(在 centos 上)可讀的檔案apache
。
您可以透過以下方式驗證sudo -u apache stat /path/to/file