美文网首页
如何清空浏览器的CSS缓存

如何清空浏览器的CSS缓存

作者: Cute_小肥鸡 | 来源:发表于2021-03-16 10:47 被阅读0次

项目需求:请求一个网站时,浏览器会缓存CSS,导致每次更新网站的代码后,不会自动更新样式,甚至需要手动去清空浏览器的缓存,但是用户不可能每次都清空缓存,这就要求我们要解决CSS缓存问题。(添加版本号即可)

1、定义一个变量,可以全局调用

因为我们项目是用CodeIgniter框架(简称CI框架),所以在项目的application/core/MY_Controller.php 添加 “$this ->twiggy ->set('version',"1.0")”,为了可以在页面全局调用。

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class MY_Controller extends CI_Controller {

    public function __construct(){
        parent::__construct();
        $this->load->library('twiggy');
        $twigConfig = $this ->twiggy ->getConfig();
        $debug = $twigConfig['environment']['debug'];


        //全局变量:seo优化文本
        define("DOMAIN",$_SERVER['HTTP_HOST']);
        define("KAIKE_DOMAIN",'http://localhost:8086', true);

        $CI = &get_instance();
        $CI ->load ->config('seoText');
        $this ->twiggy ->set('seoText',$this->config->item('seoText'));
        $CI ->load ->config('DomainName');
        $this ->twiggy ->set('DomainName',$this->config->item('DomainName'));
        $this ->twiggy ->set('context_path',$this->config->item('context_path'));
        $this ->twiggy ->set('version',"1.0");//为了清空CSS、JS的缓存;每次上传代码,需要手动修改一次版本号,最好不要重复;从1.0开始
        $this ->twiggy ->set('debug',$debug);
    }
}

2、在页面使用全局变量 “{{ version }}

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
        <meta charset="utf-8" />
        <meta name="description" content="overview &amp; stats" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0" />
        <title>首页</title>

        <link rel="stylesheet" href="{{ context_path }}statics/css/home.css?v={{ version }}"/>
    </head>

    <body>

    </body>
</html>

3、效果图

图1

相关文章

网友评论

      本文标题:如何清空浏览器的CSS缓存

      本文链接:https://www.haomeiwen.com/subject/ycgrcltx.html