2008-12-08 72 views
0

我有這樣的重寫規則如何重寫這個RewriteRule?

 
RewriteRule (.*)/([^/\.]+).css$ include/style/styleRedir.php?css=$2.css [L,NC] 

它匹配的東西,如:

 
somefolder/foo.css 

並rewirites到:

 
include/style/styleRedir.php?css=foo.css 

但它不會匹配:

 
foo.css 

所以,我試圖將其更改爲:

​​

但那就改寫爲:

 
include/style/styleRedir.php?css=.css 

所以,我怎麼能做出這樣重寫規則,因此它可以改寫foo.css包括/風格/ styleRedir。 php?css = foo.css

回答

4

我沒有安裝Apache來測試,但是您是否嘗試添加/?到第一個分組?

RewriteRule (.*/?)([^/\.]+).css$ include/style/styleRedir.php?css=$2.css [L,NC] 

或者,爲什麼不是2規則?

RewriteRule (.*)/([^/\.]+).css$ include/style/styleRedir.php?css=$2.css [L,NC] 
RewriteRule /?([^/\.]+).css$ include/style/styleRedir.php?css=$1.css [L,NC] 
+0

謝謝解決方案2(2規則)修正它。 – 2008-12-08 20:37:01