【发布时间】:2010-08-14 03:32:02
【问题描述】:
我在这里遇到了一个小问题。 我正在使用一个简单的规则将所有请求重定向到脚本,但一些具有静态内容的文件夹除外:
RewriteEngine On
RewriteCond $1 !^(templates|css|js|uploads)/(.*)$
RewriteRule ^(.*)$ index.php?url=$1 [L,QSA]
大多数时候,重定向是好的和透明的。 但是如果与 URL 匹配的文件夹存在并且我没有放最后一个“/”,我将有一个 301 重定向。
示例:(文件夹库不存在,但 mods 存在)
- ht*p://localhost/test/gallery/ -> 好的
- ht*p://localhost/test/mods/ -> 好的
- htp://localhost/test/mods -> 301 重定向到 htp://localhost/test/mods/?url=mods
我在所有 apache2 服务器上都有这个问题(测试过的 Fedora、Debian、Windows)。
有人知道如何解决这个问题吗? 谢谢
【问题讨论】:
标签: apache .htaccess mod-rewrite apache2