2010-07-26 151 views
0

我試圖優化我的web應用程序,不幸的是已經結束了大約450K的JavaScript文件大小 - 壓縮後也[這將需要一段時間,我重做javascripting,但直到那時我必須去現場] - 我最初製作了一些小型JavaScript庫。而我做的是我有一個PHP文件,其中包括所有的JavaScript文件,然後我包括如下我的PHP文件:javascript文件沒有被緩存?

<script language="js/js.php"></script> 

的事情是,我希望我的文件將在第一次加載緩存但似乎每次刷新頁面或回到它的文件從服務器重新加載 - 我檢查了這個使用螢火蟲。還有什麼我必須添加,以確保我的文件緩存在用戶端......或者我誤解了這裏的緩存的想法?

+0

Apache的'.htaccess'是你的一個選擇嗎? – 2010-07-26 07:09:05

回答

4

你需要在php中設置一些頭文件以確保文件被緩存。

截至js.php放頂:

ob_start("ob_gzhandler"); 

$expires = 2678400; // 1 month in seconds 
header("Pragma: public"); 
header("Cache-Control: maxage=".$expires); 
header('Expires: ' . gmdate('D, d M Y H:i:s', time()+$expires) . ' GMT'); 

這將在飛行中添加這兩種基本的緩存+ gzip壓縮。

+1

另外,他可能想要將腳本標記更改爲有效,''script type =「text/javascript」src =「js/js.php」>' – 2010-07-26 06:44:50

+0

像魅力一樣工作:D感謝您的支持! – Ali 2010-07-26 07:39:34

0

爲什麼不離開.js文件並讓web服務器負責緩存?
壓縮不是你真正需要的東西,但有條件的獲取是