神佑的部落格

神佑娛樂休閒館

PHP

開發 HTML 清除js、css快取解決方案

當我們在開發前端網頁時,伺服器端的js或者css被修改後,如何讓客戶端在不清除快取的情況下,自動請求最新的檔案?

方案一 : 加上版本號

<link rel="stylesheet" type="text/css" href="style.css?v=1.0">
<script type="text/javascript" src="test.js?v=1.0"></script>

在HTML裡的檔名後面加上”?v=xx”,隨著版本更新

方案二 : 加上日期或時間

<link rel="stylesheet" type="text/css" href="style.css?t=20200318">
<script type="text/javascript" src="test.js?t=20200318"></script>

在HTML裡的檔名後面加上”?t=xx”,可以加日期跟時間
寫成PHP:

<?php $CacheTime = date('YmdHis');?>
<link rel="stylesheet" type="text/css" href="style.css?t=<?php echo $CacheTime; ?>">
<script type="text/javascript" src="test.js?t=<?php echo $CacheTime; ?>"></script>

使用PHP的date()函式取得目前時間,再把時間echo到檔名後面,缺點就是沒有快取使用者讀取速度慢

留言板

Powered by syu65406.