我正在学习开发xhtml,css网页.我经常在CSS中进行更改,但由于浏览器缓存而没有反映在页面上,如果我手动清除cahceing它会显示最新的代码效果.有什么东西可以放在代码中让浏览器不要缓存内容吗?请任何建议
像Firefox和Chrome这样的浏览器会拍摄被访问网站的屏幕截图,并可以在新标签上显示为"最近使用过的网站".
由于我的网站显示机密信息,我怎么能避免浏览器为"最近的网站"列表拍摄屏幕截图,或者至少将其限制在登录页面(如Facebook或银行网站正在做什么)?
我找到了一个可能的答案是否有W3C标准元标记来确定用于表示网站的封面图像?但它似乎仍然是一个不稳定的方法,我调查的银行网站显然没有使用它,所以我怀疑还有另一个(更好的?)解决方案.
任何的想法?我需要它至少为Firefox工作.
注意:网站正在使用HTTPS.在Chrome下,使用HTTPS似乎可以解决此问题,因为空白屏幕显示为预览.即使使用HTTPS,Firefox也会显示它.
更新: 在Mozzila的支持页面https://support.mozilla.org/en-US/kb/thumbnails-new-tab-page-missing-how-get-them-back上,他们声明如下:
注意:某些网站不允许生成和保存图像( - >缩略图)
不幸的是他们没有告诉他们怎么做......但是似乎有办法避免它......
更新2: 我真正想要的是该网站使用缓存的Javascript和图像,但不是缩略图.使用HTTPS可以解决它,除了因为Firefox的bug.
我正在开发一个新网站,每当我更改CSS设置时,chrome都不接受这些更改,除非我完全关闭chrome并使用任务管理器并重新启动它.我尝试过很多东西.以下列出了我尝试过的事情:
--disk-cache-dir=null任何人有任何想法如何帮助?每次我想检查CSS更改时关闭chrome非常烦人且效率低下.另一个烦恼是,我正在尝试在浏览器中听音乐,所以如果我关闭Chrome,我必须回去再次播放我的音乐,这就像现在非常烦人,而且比我想要的更耗费时间.
我曾尝试在线查看有关缓存清除的其他文章以及有关Stack Overflow的其他文章,但我已尝试完成他们建议的大部分内容,但我还没有看到任何积极的结果.大多数文章都说在CSS文件的末尾添加某种随机字符串或版本作为GET请求,但是虽然我知道这在过去对我有用,但是没有用.
我认为这是因为缓存,但我不完全确定.
我遇到的问题是,当我更改文件并保存文件时,它在我的浏览器中暂时不会更新.我认为这是因为该文件已缓存在我的浏览器中,并且正在加载以前的版本.由于我正在测试,我需要弄清楚如何禁用它,因为我将经常更改文件.
试图在网上搜索这个,但无法找到我想要的东西.
我目前在localhost上运行它,但更改的文件只是HTML
编辑:
我知道这不是我的文件的问题,因为如果我在新的浏览器中打开它,它会加载新版本的页面.
我正在尝试使用chrome来进行测试.
EDIT2:
此外,正在更改的文件是通过require.js加载的,因此它不是在URL中输入的直接文件
为什么在这样的html的head部分使用meta标签"Pragma"和"Expires".谢谢.
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
isvarnishworking.com让我知道
Varnish似乎在该URL响应,但Cache-Control标头的"max-age"值小于1,这意味着Varnish将永远不会在此URL的缓存中提供内容.
max-age值似乎为:0
这个标题信息
The url we checked: myDomainHere.com
HTTP/1.1 200 OK
Server: Apache/2.4.7 (Ubuntu)
X-Powered-By: PHP/5.5.9-1ubuntu4.5
Set-Cookie: PHPSESSID=vgk7db66kh7nce8lpe5789u105; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: max-age=60, private, proxy-revalidate
Pragma: no-cache
Vary: Accept-Encoding,User-Agent
Content-Encoding: gzip
Content-Type: text/html
Content-Length: 14192
Accept-Ranges: bytes
Date: Sat, 18 Jul 2015 09:31:55 GMT
X-Varnish: 324589322
Age: 0
Via: 1.1 varnish
Connection: keep-alive
Run Code Online (Sandbox Code Playgroud)
我在.htaccess中有这个
<FilesMatch "\.(js|css)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|swf)$">
Header set Cache-Control "max-age=604800, public"
</FilesMatch>
<FilesMatch "\.(html|htm|php)$">
Header set …Run Code Online (Sandbox Code Playgroud) 单击href时,我有以下内容来刷新我的页面.
<a href="javascript:history.go(0)">Click to refresh the page</a>
Run Code Online (Sandbox Code Playgroud)
我有这个
<meta http-equiv="no-cache">
Run Code Online (Sandbox Code Playgroud)
在头标签.即便如此,我还是获得了一个缓存副本.如何避免加载缓存副本?
我一直在研究这个问题,这个问题非常简单:现代浏览器(chrome/FF)是缓存内容,html页面等等.
当您发布新版本时,angular GET这些模板.但是,由于浏览器提供这些页面的缓存版本而不是新的更新版本.
我已经阅读了关于如何实现这一点的2000篇文章..没有"meta"标签对我有用..(例如:使用<meta>标签关闭所有浏览器中的缓存?)唯一有效的方法是通过添加一些参数值http://bla.com?random=39399339手动管理文件的版本.然而,如果有时只需要"清除缓存"(主要是版本之间),这真的很烦人并且非常难以维护.
有没有机会浏览器不提供手动"清除缓存"的简单,受控方式.无论是在服务器还是客户端方式?
PS Angular模板使管理变得更加困难.
我正在使用缓存清单文件处理脱机Web应用程序.我无法刷新我的javascript文件.如果我更改.js文件(清单文件中列出),然后我更改清单文件版本号.并保存它,然后更改的.js文件不会在客户端上重新加载.我需要做些什么才能让.js文件刷新?
谢谢
我以为我的问题是我的javascript被缓存而且即使使用更新的版本标签也没有更新,例如:
<script type="text/javascript" src="lib/myScript.min.js?v=3"></script>
Run Code Online (Sandbox Code Playgroud)
但我意识到问题是我的html文件被缓存...所以浏览器甚至不知道有一个新的脚本文件.
我不想禁用缓存,但是有没有办法让浏览器知道它没有最新的html文件?(这是我放在我的html文件中,还是放在我的apache2服务器上?)
html ×8
caching ×5
apache2 ×2
css ×2
javascript ×2
.net ×1
angularjs ×1
asp.net ×1
firefox ×1
http-headers ×1
manifest ×1
offline ×1
requirejs ×1
screenshot ×1
testing ×1
thumbnails ×1
ubuntu ×1
varnish ×1
xhtml ×1