0

我有一个这样的网址:www.mydomain.com/file/a-file.pdf

我想要的是如果我的 REQUEST_URI 以此开头:/file/那么 file.php (位于根目录中)应该处理请求。但是如果 URL 是这样的www.mydomain.com/files/a-file.pdf,就不应该重写。

我已经这样做了,但它不起作用:

RewriteCond %{REQUEST_URI} ^/file/
RewriteRule .* file.php [L]

如果我删除第一行的最后一个 / ,它可以工作,但www.mydomain.com/files/a-file.pdf也会被重写。

我做错了什么?

4

1 回答 1

0

也许最简单的是忽略请求,它确实匹配真实文件。扩展如下

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteCond %{REQUEST_URI} ^/file
RewriteRule .* file.php [L]

这假设您的 /files/a-file.pdf 是一个真实文件。

于 2013-11-19T16:25:00.763 回答