3

我遇到的问题是,当 URL 包含一个存在的目录时,URL 会随着文件的大小写而改变。

更具体地说,这是正在发生的事情:

domain.com/cron/xxx当我在我的 PHP 脚本中转到then 时,uri将是:

cron/xxx

但如果该文件夹Cron存在,那么uri将是:

Cron/xxx

有谁知道是什么原因导致这种情况发生?

这是我的.htaccess文件:

重写引擎开启

#remove www.
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

RewriteCond %{HTTP_HOST} ^api
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?uri=api/$1 [L,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?uri=$1 [L,QSA]
4

1 回答 1

0

我不是超级精通 ModRewrite,但你可以尝试:

RewriteMap  lc int:tolower

然后在您的规则中使用它,如下所示:

RewriteRule (.*) ${lc:$1} [R=301,L]
于 2013-10-02T01:20:08.047 回答