tips 前端 阻止 浏览器缓存静态资源
手机浏览器 uc上一直表现良好 qq浏览器还有微信上网址直接打开的(一样采用qq浏览器的内核) 大量缓存了静态资源
css js 图片 等这些当出现改动了刷新网页根本没有效果
电脑端浏览器没有问题 因为部分手机端浏览器 总会出于省流量性能等因素缓存静态资源本来没有什么问题 不过这会给开发带来困扰 不适合调试 如果只是这样还好 可是还是会对生产环境造成一定影响比如当服务器端的css文件内内容有了改动 手机端浏览器却一直没有释放缓存 就会造成一些页面上出现明显的问题所以给css js jpg swf 等加上时间戳是必要的,最好是每当文件做了修改就变动时间戳让浏览器去下载,而没有改动就调用浏览器缓存的文件
所以可以这样
<?php $css='/xxx/xxx.css' ?> <link rel="stylesheet" type="text/css" href="<?php echo "$css" . '?time=' . filemtime( $css ); ?>" />
笔记:
php 原则上'' ""是通用的,echo函数输出时 ' '内的内容会被解析为纯字符串, " "内的变量会被解析会变量的值,但是不能解析函数的值 .是php的连接符
filemtime("file")将得到file最近一次修改时间,得到类似1430451431这个格式的unix时间戳
原理是通过增加一个后缀改变了请求的文件的url,从而迫使浏览器认为这是不同的文件去下载更新缓存
最终输出的内容就像 百度云的首页html源代码里这样
<link href="/ppres/static/css/pcloud_feedpage_all.css?t=201504154611" rel="stylesheet" type="text/css"/>
css 文件可以这样加时间戳,其它静态资源也可参照此加
不过开发时也可以直接这样 让它每次都更新时间戳,
<link rel="stylesheet" type="text/css" href="/xx/style.css?time=<?php echo time(); ?> " />
其它语言如jsp asp 等同样可以轻易做到
不过不可以用javascript做 虽然可以用它这样得到时间戳
<script> var time1=Date.parse(new Date()); var time2=new Date().valueOf(); var time3=new Date().getTime(); console.log('timestamp:'+time1); console.log('timestamp:'+time2); console.log('timestamp:'+time3); /* time1的毫秒部分将是000,不会计算毫秒 time2,time3会记录精确到毫秒,且结果相同 */ </script>
但是是没有意义的,在客户端即使插入到了引用路径中也是也是没有意义 因为请求是向服务器端发的 需要考虑一个是执行加时间戳的时间上 一个是服务器端的路由控制
wordpress下也可以参照这样
来自winy:http://www.hilau.com/1311273.html /or/ http://www.laozhuhome.com/html/automatically-version-your-css-and-javascript-files
用grunt作前端工作流时更可以使用这样一个tool
automatic-version-increment
很多方式,选喜欢的吧!
总结:以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Perkhidmatan Node yang dibina berdasarkan bukan sekatan dan dipacu peristiwa mempunyai kelebihan penggunaan memori yang rendah dan sangat sesuai untuk mengendalikan permintaan rangkaian besar-besaran. Di bawah premis permintaan besar-besaran, isu yang berkaitan dengan "kawalan memori" perlu dipertimbangkan. 1. Mekanisme kutipan sampah V8 dan had ingatan Js dikawal oleh mesin kutipan sampah

Sistem pengendalian Windows menggunakan cache untuk menyimpan entri DNS. DNS (Domain Name System) ialah teknologi teras Internet yang digunakan untuk komunikasi. Khususnya alamat IP yang digunakan untuk mencari nama domain. Apabila pengguna menaip nama domain ke dalam penyemak imbas mereka, salah satu tugas pertama yang dilakukan apabila tapak dimuatkan ialah mencari alamat IPnya. Proses ini memerlukan akses kepada pelayan DNS. Biasanya, pelayan DNS Pembekal Perkhidmatan Internet digunakan secara automatik, tetapi pentadbir boleh bertukar kepada pelayan DNS lain kerana ia mungkin lebih pantas atau memberikan privasi yang lebih baik. Menukar penyedia DNS juga boleh membantu memintas penapisan Internet jika DNS digunakan untuk menyekat akses ke tapak tertentu. Windows menggunakan penyelesaian DNS

Modul fail ialah enkapsulasi operasi fail asas, seperti membaca/menulis/membuka/menutup/memadam fail, dsb. Ciri terbesar modul fail ialah semua kaedah menyediakan dua versi **segerak** dan ** asynchronous**, dengan Kaedah dengan akhiran penyegerakan adalah semua kaedah penyegerakan, dan kaedah yang tidak semuanya adalah kaedah heterogen.

Apakah cache? Cache (sebutan ka·shay) ialah komponen perkakasan atau perisian berkelajuan tinggi khusus yang digunakan untuk menyimpan data dan arahan yang kerap diminta, yang seterusnya boleh digunakan untuk memuatkan tapak web, aplikasi, perkhidmatan dan aspek lain bahagian sistem dengan lebih pantas. . Caching menjadikan data yang paling kerap diakses tersedia. Fail cache tidak sama dengan memori cache. Fail cache merujuk kepada fail yang kerap diperlukan seperti PNG, ikon, logo, shader, dsb., yang mungkin diperlukan oleh berbilang program. Fail ini disimpan dalam ruang pemacu fizikal anda, biasanya tersembunyi. Memori cache, sebaliknya, adalah sejenis memori yang lebih pantas daripada memori utama dan/atau RAM. Ia sangat mengurangkan masa capaian data kerana ia lebih dekat dengan CPU dan lebih pantas berbanding dengan RAM

Vue.js telah menjadi rangka kerja yang sangat popular dalam pembangunan bahagian hadapan hari ini. Memandangkan Vue.js terus berkembang, ujian unit menjadi semakin penting. Hari ini kita akan meneroka cara menulis ujian unit dalam Vue.js 3 dan menyediakan beberapa amalan terbaik serta masalah dan penyelesaian biasa.

PHP dan Vue: gandingan sempurna alat pembangunan bahagian hadapan Dalam era perkembangan pesat Internet hari ini, pembangunan bahagian hadapan telah menjadi semakin penting. Memandangkan pengguna mempunyai keperluan yang lebih tinggi dan lebih tinggi untuk pengalaman tapak web dan aplikasi, pembangun bahagian hadapan perlu menggunakan alat yang lebih cekap dan fleksibel untuk mencipta antara muka yang responsif dan interaktif. Sebagai dua teknologi penting dalam bidang pembangunan bahagian hadapan, PHP dan Vue.js boleh dianggap sebagai alat yang sempurna apabila digandingkan bersama. Artikel ini akan meneroka gabungan PHP dan Vue, serta contoh kod terperinci untuk membantu pembaca memahami dan menggunakan kedua-dua ini dengan lebih baik.

Cross-domain ialah senario yang sering dihadapi dalam pembangunan, dan ia juga merupakan isu yang sering dibincangkan dalam temu bual. Menguasai penyelesaian merentas domain biasa dan prinsip di sebaliknya bukan sahaja boleh meningkatkan kecekapan pembangunan kami, tetapi juga menunjukkan prestasi yang lebih baik dalam temu duga.

Dengan perkembangan teknologi Internet, pembangunan front-end telah menjadi semakin penting. Terutamanya populariti peranti mudah alih memerlukan teknologi pembangunan bahagian hadapan yang cekap, stabil, selamat dan mudah diselenggara. Sebagai bahasa pengaturcaraan yang berkembang pesat, bahasa Go telah digunakan oleh semakin ramai pembangun. Jadi, adakah boleh menggunakan bahasa Go untuk pembangunan bahagian hadapan? Seterusnya, artikel ini akan menerangkan secara terperinci cara menggunakan bahasa Go untuk pembangunan bahagian hadapan. Mari kita lihat dahulu mengapa bahasa Go digunakan untuk pembangunan bahagian hadapan. Ramai orang berpendapat bahawa bahasa Go ialah a
