0

我的 htaccess 文件位于“myappname”文件夹下。

我正在尝试重定向此路径;

myappname/CONTROLLER_NAME/ANYFILE.(css|js|gif|jpg|png)

去那条路

myappname/views/default/tpl/CONTROLLER_NAME/ANYFILE.(css|js|gif|jpg|png)

这是我的 HTACCESS 规则

RewriteEngine on
RewriteRule ^(.*)/(.*)\.(css|js|gif|jpg|png)$ views/default/tpl/$1/$2.$3 [L,NC]

但它给了我 HTTP 500,除非我将它重定向到一个 PHP 文件,比如

RewriteEngine on
RewriteRule ^(.*)/(.*)\.(css|js|gif|jpg|png)$ views/default/tpl/$1/index.php?a=$2.$3 [L,NC]

我的规则有什么问题?我对 htaccess 很陌生,我很有可能会错过一些小东西。

4

1 回答 1

0

这是因为您的目标与正则表达式匹配:

views/default/tpl/foo/bar.png

匹配正则表达式:

^(.*)/(.*)\.(css|js|gif|jpg|png)$

所以规则只是不断循环。您需要添加一个条件:

RewriteCond %{REQUEST_URI} !^/views/default/tpl

就在您的RewriteRule.

于 2012-10-11T19:37:08.433 回答