.htaccess重写规则异常

时间:2015-01-12 16:50:43

标签: php apache .htaccess mod-rewrite

我有一个小问题。 我已经构建了一个系统,它正在使用.htaccess将流量定向到正确的位置。

现在我有以下.htaccess数据

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule    ^$    core/    [L]
RewriteRule    (.*) core/$1    [L]
///###  (does not work.. this is a problem) RewriteRule    (.*) app/template/ !page    [L]
 </IfModule>

问题实际上是当我想要显示位于 / app / templates 中的.css文件时,它还会重定向到 / core /

我试图例外。然而,这似乎并不适用于我的方法。

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$    core/    [L]
    RewriteRule    (.*) core/$1    [L]
    RewriteRule    (.*) app/template/ !page    [L]
 </IfModule>

这个.htaccess给出了500错误。 谁能告诉我我做错了什么?以及如何使异常适用于模板目录?

TIAD !!

1 个答案:

答案 0 :(得分:3)

您应该使用:

<IfModule mod_rewrite.c>
   RewriteEngine on

   RewriteRule ^$ core/ [L]

   # If the request is not for a valid directory
   RewriteCond %{REQUEST_FILENAME} !-d
   # If the request is not for a valid file
   RewriteCond %{REQUEST_FILENAME} !-f    
   RewriteRule (.*) core/$1 [L]

 </IfModule>