2014-01-11 183 views
0

我正在使用scssphp進行我的css預處理,現在我的樣式看起來像src="style.php/style.scss"。我想要的是使用htaccess來寫入風格,然後以.scss結尾的任何內容都將通過style.php運行。所以我試着把它放在我的主目錄中。.htaccess重寫規則不起作用

RewriteEngine On 
RewriteRule ^(.*)\.scss$ style.php/$1.scss 

我甚至嘗試

#RewriteEngine On 
#RewriteRule ^(.*)\.scss$ style.php/style.scss 

無論是工作,事情正在發生,因爲我style.scss加載了500內部服務器錯誤,但我不知道哪裏出錯。

回答

1

你的規則是循環試試你的htaccess,嘗試添加額外的檢查,當URI具有style.php在不重寫它:

RewriteEngine On 
RewriteCond %{REQUEST_URI} !style\.php 
RewriteRule ^(.*)\.scss$ style.php/$1.scss 

重寫引擎將繼續遍歷你的規則,直到URI停止chanmging。你的規則發生了什麼事情,像/path/style.scss這樣的請求正在處理並重寫爲/style.php/path/style.scss,並且重寫引擎循環。第二次,規則再次被應用並重寫爲:/style.php/style.php/path/style.scss等。

0

更好的正則表達式來獲得請求的文件名會[a-z_A-Z]+.scss

使用此語法