發佈日期:
如何在apache中‧設定客戶端‧每次存取的都是最新的資料
很多時,我們會希望客戶端(Clients),存取時永遠得到的是最新的資料。但更多的時間,電腦會有心無意地,儲存起網站的數據作為緩衝(Cache),以加快瀏覽速度。要令客戶端,得到的永遠是最新的資料,就不要在電腦儲存緩衝數據。在網上,很多方法教導,在HTML檔案、PHP檔案、ASP檔案內加入header來控制,試了幾次,電腦的瀏覽器還是存取了伺服器的圖像及檔案。直至用了這個在.htaccess檔案設定的方法。01. 首先,先確認那一個資料夾(包含以下資料夾設定),需永遠存取時是最新的資料。
02. 在此資料夾內,建立檔案.htaccess,並貼上以下內容。
<FilesMatch "\\.(jpg|JPG|png|PNG|htm|html)$"> ExpiresActive Off Header set Cache-Control "private, no-cache, no-store, proxy-revalidate, no-transform" Header set Pragma "no-cache" </FilesMatch>
以上是假設我不想任何JPG檔案、PNG檔案及HTML檔案作為緩衝。
03. 打開apache的httpd.conf設定檔,尋找2個位置。
將: #LoadModule headers_module modules/mod_headers.so ... #LoadModule expires_module modules/mod_expires.so 更改為: LoadModule headers_module modules/mod_headers.so ... LoadModule expires_module modules/mod_expires.so
04. 重新啟動apache2服務。
05. 打開瀏覽器測試,會發現電腦,不會再儲存網站指定資料夾內的JPG檔案、PNG檔案及HTML檔案。
發佈留言