Mih*_*iko 41 css stylesheet browser-cache
我正在创建一个网站,但是当我对我的网站上的样式表进行更改,并且我刷新了网站时,没有任何更改.
我尝试使用视图源工具来检查它stylesheet.css,它也没有更新.但是,当我找到我的系统的根源时.
在我看到我网站上的更新之前,我必须至少等待20分钟,有人能告诉我为什么我不立即看到更改?我的浏览器,计算机或服务器出了什么问题?
我也尝试删除我的cookie,缓存和历史记录,但它仍然无法正常工作.
Sea*_*ghn 108
如果您的网站尚未生效,并且您只是想以高兴的间隔更新样式表,请使用以下内容:
Ctrl + F5
这将强制您的浏览器重新加载并刷新与网站页面相关的所有资源.
因此,每当您更改样式表中的某些内容并想要查看新结果时,请使用此选项.
在Mac OS Chrome上使用:Command + Shift + R.
Bar*_*ski 39
很可能该文件只是由服务器缓存.您可以禁用缓存(但请记住在网站上线时启用它),或者修改href您的link标记,这样服务器就不会从缓存中加载它.
如果您的页面是由某些语言(如php)动态创建的,则可以在href值的末尾添加一些变量,例如:
    <link rel="stylesheet" type="text/css" href="css/yourStyles.css?<?php echo time(); ?>" />
这将在文件路径的末尾添加当前时间戳,因此它将始终是唯一的,并且永远不会从缓存中加载.
如果您的页面是静态的,则必须自己管理这些变量,因此请使用以下内容:
    <link rel="stylesheet" type="text/css" href="css/yourStyles.css?version=1" />
在对文件内容进行一些更改后,更改version=1为version=2依此类推.
如果您希望从缓存css文件中禁用缓存,请参阅您的服务器类型文档(在apache,IIS,nginx等上以不同方式完成)或在https://serverfault.com/上查询/搜索问题
假设IIS - 在根目录或相关文件夹中使用正确的设置添加密钥就可以了.
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <caching enabled="false" enableKernelCache="false" /> <!-- This one -->
    </system.webServer>
</configuration>
也就是说,有时仍然需要回收应用程序池以"碰撞"CSS.因此:单独禁用IIS缓存不是100%保证的解决方案.
对于浏览器:有一些关于细粒度的注释,用于控制感兴趣的SuperUser 上的FF上的本地缓存.
NCa*_*Cal 11
我有同样的问题,这是由于浏览器缓存样式表.尝试刷新缓存:
    Cmd + Shift + r (on a mac) OR Ctrl + F5 (on windows)
这将进行硬刷新,并应使用您上传到服务器的新样式表.
查看文件是否被缓存的最简单方法是将查询字符串附加到<link />元素,以便浏览器重新加载它.
为此,您可以将样式表引用更改为类似的内容
<link rel="stylesheet" type="text/css" href="/css/stylesheet.css?v=1" />
注意v=1部分.每次创建新版本时都可以更新它,以查看它是否确实被缓存.