2012-05-24 45 views
1

我在基於php的應用程序中使用sass,並試圖使用--update選項,以便每次瀏覽器請求相應的css文件時都不會重新編譯sass代碼。當我在命令行上運行sass命令時,它按預期工作(sass文件更改後的編譯時間更長,如果沒有更短的編譯時間)。當我使用exec從php運行它時,似乎需要足夠長的時間才能每次都重新編譯它。任何想法爲什麼以及如何修復它?爲什麼從php exec運行時sass --update不會很快?

+0

使用['microtime()'](http://php.net/microtime#example-670)來準確記錄所花費的時間長度。通過這種方式,您可以確定腳本中的其他內容不會導致問題。 – Treffynnon

+0

是否做到了。還使用time命令(即time php script.php)從命令行運行腳本,它似乎運行得更快。也許與網絡服務器正在運行的用戶/權限有關? – netfire

+0

這可能是一個原因。如果Web服務器沒有寫入該文件的權限,那麼它將始終認爲它已更改,因爲它無法更新它。嘗試將其設置爲777僅用於測試 - 以消除這是一個原因。 – Treffynnon

回答

1

看起來像是作爲Web服務器運行時的默認緩存位置的問題。使用--cache-location選項指定緩存目錄似乎可以解決問題並使其運行速度更快。

相關問題