今天測試了下,在沒有nginx等前端反向代理服務器時,tomcat竟然默認對靜態(tài)資源做了緩存。 tomcat默認運用etag及l(fā)ast_modifed。
成都創(chuàng)新互聯(lián)公司是網(wǎng)站建設技術(shù)企業(yè),為成都企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站設計,網(wǎng)站設計,網(wǎng)站制作,網(wǎng)站改版等技術(shù)服務。擁有十年豐富建站經(jīng)驗和眾多成功案例,為您定制適合企業(yè)的網(wǎng)站。十年品質(zhì),值得信賴!
- 使用一些優(yōu)化技巧,比如利用圖片的背景位移減少圖片的個數(shù);image map技術(shù);使用Inline images將css圖片捆綁到網(wǎng)頁中。- 盡量合并js和css文件,減少獨立文件個數(shù)。
第一種方式:利用Tomcat自動部署 利用Tomcat自動部署方式是最簡單的、最常用的方式。
不能控制js和css文件。對于同一個URL的文件,瀏覽器發(fā)現(xiàn)緩存里有,會訪問服務器,取得文件的修改時間或ETAG,沒有變化,使用緩存里的,有變化,則重新下載。
給css和js添加所謂版本號其實也是同一個原理。這個版本號其實就是給css和js的網(wǎng)址接個尾巴而已。這個也同樣適用網(wǎng)頁里面的圖片、音樂等資源,事實上只要是http協(xié)議的元素都可以利用這個辦法來避開緩存實時刷新。
1、無法直接設置,但可變通。 比如調(diào)用一個style.css文件,你調(diào)用的時候可以在這個文件名后面加上參數(shù),如style.css?date=20131123 date后面的參數(shù)值隨當前日期發(fā)生變化,也就每隔一天要重新讀取一次。
2、這種情況可能是網(wǎng)絡問題,但是大多數(shù)都是網(wǎng)頁設計者給禁止了,那怎么辦呢。我們可以利用文件菜單來進行。打開文件菜單,里面可能有“使用Front Page編輯”、“使用Word編輯”或者是“使用記事本編輯”。
3、方法:處理這種情況最有效的解決方案就是修改其所有的鏈接,這樣,請求就會從服務器下載最新的內(nèi)容。可以通過query的方式添加隨機數(shù)。
4、這種情況下你只能找html頁面當中js和css的引用地址了,然后下載。
5、我們在使用offline cache的時候,有時候可能會更新資源,如js,css或者圖片的 更新。
首先要先把.manifest后綴的文件 的mine類型配置為text/cache-manifest。
瀏覽器是根據(jù)網(wǎng)址來緩存的,所以只要給網(wǎng)址接個尾巴,瀏覽器就會認為是新網(wǎng)址,就會從網(wǎng)上重新下載數(shù)據(jù)了。當然,如果下次再次改變了網(wǎng)頁內(nèi)容,這個尾巴就要再次修改。給css和js添加所謂版本號其實也是同一個原理。
第一步:javascript代碼判斷是否存在cookie記錄值 第二步:如果有判斷非第一次加載,如果沒有就創(chuàng)建一個cookie記錄值,以備下次加載判斷。cookie有存活周期,但是技術(shù)成本較低。session記錄技術(shù)成本較高,服務器壓力增大。
html5離線存儲緩存列表可以動態(tài)生成 最簡單來說,一個離線網(wǎng)絡應用程序就是一個URL的列表——HTML,CSS,JavaScript,圖片,或者其他類型的資源。離線網(wǎng)絡應用程序的主要指向一個叫做名單文件并用于定位網(wǎng)絡服務器上的資源列表。
Application CacheHTML5引入應用緩存,意味著web應用可以進行緩存,即使在沒有網(wǎng)絡的情況下也能使用。
css可以使頁面以一定的布局方式顯示出來。而js對頁面的各種動態(tài)效果進行處理,如進行圖片的替換,圖片的滾動,層的顯示與隱藏,快捷鍵的處理等等。要想使用css和js,只需要引入到html中便可。
強緩存(http狀態(tài)碼:200),不用請求服務器直接使用本地緩存,協(xié)商緩存(http狀態(tài)碼:304),使用時先請求服務器若被告知緩存沒過期則使用本地緩存,不用下載資源,使用localstorage對數(shù)據(jù)進行存儲。
圖片優(yōu)化優(yōu)化方法:1)盡可能的使用PNG格式的圖片,它相對來說體積較小。2)對于不同格式的圖片,在上線之前最好進行一定的優(yōu)化。3)圖片的延遲加載,也叫做賴加載。
在網(wǎng)頁的設計中,請盡量使用link標簽來引用CSS,避免使用@import來引用,原因很簡單,您可以理解為就是將CSS樣式放在網(wǎng)頁中的內(nèi)容底部就可以了。
require.ensure這個函數(shù)是一個代碼分離的分割線,表示 回調(diào)里面的require是我們想要進行分割出去的,即require(./baidumap.js),把baidumap.js分割出去,形成一個webpack打包的單獨js文件。
1、最基礎(chǔ)的,在頁面引入 CSS 外部資源的時候,可以在鏈接的后面添加一串隨機字符。
2、處理辦法更改css文件名:其實解決這個問題很簡單,緩存是通過文件名標記緩存的內(nèi)容的。在你更新了網(wǎng)站的css文件內(nèi)容后,在更換一下css的文件名就可以了。
3、解決辦法一:每次修改js或css文件后,都要手工修改那個版本號,注意:是每修改一次(哪怕僅僅是改了一個字符)都要修改版本號;解決辦法二:如果嫌手工修改太麻煩,那可以通過程序來自動修改(用隨機數(shù)做版本號)。
4、方法:處理這種情況最有效的解決方案就是修改其所有的鏈接,這樣,請求就會從服務器下載最新的內(nèi)容。可以通過query的方式添加隨機數(shù)。
可以用JS實現(xiàn)清除瀏覽器緩存,解決方法如下:在靜態(tài)頁面也就是以.html,.jsp,.aspx,.php結(jié)尾的文件中在dead中加入以下代碼。如果是用ajax異步請求服務器,加上beforeSend代碼。或者直接將cache設為false,如圖。
方法:處理這種情況最有效的解決方案就是修改其所有的鏈接,這樣,請求就會從服務器下載最新的內(nèi)容。可以通過query的方式添加隨機數(shù)。
第一步:javascript代碼判斷是否存在cookie記錄值 第二步:如果有判斷非第一次加載,如果沒有就創(chuàng)建一個cookie記錄值,以備下次加載判斷。cookie有存活周期,但是技術(shù)成本較低。session記錄技術(shù)成本較高,服務器壓力增大。
這樣舊的 CSS 和新的 Html 就可能會導致錯誤,這里有個小技巧,可以保證瀏覽器不會緩存 CSS 和 JS,只需要在文件結(jié)尾隨便加點參數(shù)即可,這樣瀏覽器就會認為這是不同的文件。
瀏覽器是根據(jù)網(wǎng)址來緩存的,所以只要給網(wǎng)址接個尾巴,瀏覽器就會認為是新網(wǎng)址,就會從網(wǎng)上重新下載數(shù)據(jù)了。當然,如果下次再次改變了網(wǎng)頁內(nèi)容,這個尾巴就要再次修改。給css和js添加所謂版本號其實也是同一個原理。
網(wǎng)頁標題:css中的樣式如何緩存 css樣式怎么保存
轉(zhuǎn)載來源:http://m.newbst.com/article44/dgosche.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、Google、微信小程序、企業(yè)網(wǎng)站制作、網(wǎng)站收錄、網(wǎng)站排名
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)