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