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

求教问题: 用版本号更新 css 和 js 文件, 具体细节?

  •  
  •   douDouDragon · Feb 13, 2015 · 4716 views
    This topic created in 4092 days ago, the information mentioned may be changed or developed.

    看到文章里说直接在html中引用css时, 直接在文件名后面做处理,比如:

    原来的引用:
    <link rel="stylesheet" type="text/css" media="screen" href="/css/index.css">

    更新的引用:
    <link rel="stylesheet" type="text/css" media="screen" href="/css/index.css?v=1.1">

    问题是, 我只需要在html里面这样处理了, 不用改css源文件的文件名,还是 index.css ?
    求教!谢谢啦

    13 replies    2015-02-13 17:06:49 +08:00
    Sivan
        1
    Sivan  
       Feb 13, 2015   ❤️ 1
    不用改 css 文件名。
    xenme
        2
    xenme  
       Feb 13, 2015
    这个应该主要是刷新缓存的目的吧。
    douDouDragon
        3
    douDouDragon  
    OP
       Feb 13, 2015
    @Sivan 那我需要的操作就两步: 1. 在html里面加上版本号. 2. 在服务器上直接用新文件直接覆盖源文件就行了?
    douDouDragon
        4
    douDouDragon  
    OP
       Feb 13, 2015
    @xenme 恩恩, 目的就是这个
    xenme
        5
    xenme  
       Feb 13, 2015
    @douDouDragon 是的,直接覆盖,然后加版本号,让浏览器重新缓存就好了。
    douDouDragon
        6
    douDouDragon  
    OP
       Feb 13, 2015
    @xenme 明白了,谢啦哈
    icanfork
        7
    icanfork  
       Feb 13, 2015   ❤️ 2
    建议用增加文件MD5方式去部署更新前端资源
    app_xxx.js / app_xxx.js

    这样每次上线,先上线静态资源,它不会覆盖线上文件,然后再上线html页面,就能切换资源了,如果是?xxxx的形式,无论先上线静态资源还是先上线html,都会导致短暂的出错
    文件都是md5戳做非覆盖式发布,静态资源设置10年的强缓存,用户永远不用更新同一个md5戳的文件,性能非常好,缓存策略也非常简单
    yushiro
        8
    yushiro  
       Feb 13, 2015 via iPhone
    @belin520 这方法不错
    douDouDragon
        9
    douDouDragon  
    OP
       Feb 13, 2015
    @belin520 这方法感觉蛮周到的!
    但有个小地方还不清楚, 那这样更新的本质,其实是变了源文件的文件名, html也是引用新文件吧? 然后用更新策略去减小对在线用户的影响?
    thisnull
        10
    thisnull  
       Feb 13, 2015   ❤️ 1
    icanfork
        11
    icanfork  
       Feb 13, 2015
    @douDouDragon 前端工程化当然需要前端工具来实现自动化啦
    FIS: http://fis.baidu.com/

    欢迎大家入坑!
    douDouDragon
        12
    douDouDragon  
    OP
       Feb 13, 2015
    @thisnull 恩,正拜读.
    douDouDragon
        13
    douDouDragon  
    OP
       Feb 13, 2015
    @belin520 恩,玩玩看. 结果你这是硬广告啊. 哈哈
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5511 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 09:17 · PVG 17:17 · LAX 02:17 · JFK 05:17
    ♥ Do have faith in what you're doing.