Apache httpd 重写模式不起作用

Apache httpd 重写模式不起作用

我正在使用这个 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

相关内容