V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
flyaway
V2EX  ›  CSS

style.css?body=1是什么用法?

  •  
  •   flyaway · Dec 27, 2012 · 5130 views
    This topic created in 4869 days ago, the information mentioned may be changed or developed.
    刚刚在研究一个的jekyll的模板文件,发现它的css引用是写成这样的:style.css?body=1 以前从没见过这样的用法……是我孤陋寡闻了……哪位大哥帮忙解释一下?
    5 replies    1970-01-01 08:00:00 +08:00
    loo2k
        1
    loo2k  
       Dec 27, 2012
    带参数更新文件缓存吧
    更新了 style.css 文件之后有些浏览器还有缓存,带上参数就相当于另外一个 url 会重新加载的;
    subpo
        2
    subpo  
       Dec 27, 2012
    强制刷新css缓存
    flyaway
        3
    flyaway  
    OP
       Dec 27, 2012
    @loo2k 那body这个参数有什么特别意义吗?重新加载是不是指:当我访问这个页面时,刚好后台对style.css进行了修改,然后在下一次url请求时就重新从服务器加载style.css,不再使用缓存?如果是这样的话,每次url请求都要重新连接服务器吗?
    loo2k
        4
    loo2k  
       Dec 27, 2012   ❤️ 1
    @flyaway body 参数的看具体的程序,有些可能是有其他作用。

    如果只是控制缓存的话可以这样理解:

    1. 第一次访问的是 style.css?body=1 → 然后浏览器缓存了 该样式表

    2. 管理员更新了 style.css 这个文件,但是浏览器的缓存还没有过期

    3. 于是管理员更新了参数,改为了 style.css?body=2

    4. 这个时候浏览器会认为 style.css?body=1 与 style.css?body=2 是两个不同的文件,所以重新下载

    就这样实现更新缓存了;

    不过具体的作用还要看程序实现了,我的做法一般是给 style.css 加一个文件最后更新时间的 timestamp ,方便。
    liyandong
        5
    liyandong  
       Dec 28, 2012 via Android
    cdn
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2999 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 36ms · UTC 15:10 · PVG 23:10 · LAX 08:10 · JFK 11:10
    ♥ Do have faith in what you're doing.