2008-12-01 128 views
1

好吧我有這個RewriteRule,它應該將文件base.css的任何請求重定向到{.htacces文件的文件夾} /include/style/base.css,但只是在無限循環中保持重定向,我認爲L參數會確保不會發生。RewriteRule重定向

RewriteRule (.*)/base.css$ include/style/base.css [L,NC,R=301] 

此外,它重定向到http://localhost/C:/somemaps/include/style/base.css,它不是真的應該做。

誰能告訴我如何解決這個問題?
另外我想有RewriteRule,所以它會將任何file.css重定向到{.htacces文件的文件夾} /include/style/file.css
順便說一句.htacces文件位於網站的根目錄不是服務器的根!)

回答

2

您有重定向和重寫困惑。重定向是一個HTTP狀態代碼,它告訴瀏覽器轉到另一個URL。您實際上只是想將位置重寫到另一個文件位置。嘗試

RewriteRule (.*)/(.*).css$ /include/style/$2.css [L,NC] 

如果這不起作用嘗試添加以下的RewriteEngine敘述在

RewriteBase /my-virtual-folder-path-where-htaccess-is-stored 
+0

毫米,不起作用。 – 2008-12-01 17:56:30

+1

你將必須更具體,關於什麼不工作。您可能需要使用RewriteBase來獲取/ include/style文件的正確路徑。 – 2008-12-01 18:02:38

+0

謝謝,你和Eli真的幫助過! – 2008-12-01 18:05:23

1

之後此R = 301,使一個新的請求。爲此,它再次評估RewriteRule。

嘗試用重寫條件(RewriteCond)排除此路徑/目錄。

2

此外,我想有重寫規則,因此將重定向任何file.css爲{.htacces文件文件夾} /include/style/file.css

試試這個:

RewriteRule ([^/]+).css$ /include/style/$1.css [L,NC] 
相關問題