Javascript 将不添加缓存元+;php头文件导致css/js不能缓存吗?

Javascript 将不添加缓存元+;php头文件导致css/js不能缓存吗?,javascript,php,html,css,caching,Javascript,Php,Html,Css,Caching,动态站点(100%ajax)在转到不同页面时没有更新时出现问题。我只想缓存html页面。css和js是不变的,我想缓存它,你知道吗 我添加了以下php Response::header('Cache-Control', 'no-store, private, no-cache, must-revalidate'); // HTTP/1.1 Response::header('Cache-Control', 'pre-check=0, post-check=0, max-age=0, max-st

动态站点(100%ajax)在转到不同页面时没有更新时出现问题。我只想缓存html页面。css和js是不变的,我想缓存它,你知道吗

我添加了以下php

Response::header('Cache-Control', 'no-store, private, no-cache, must-revalidate'); // HTTP/1.1
Response::header('Cache-Control', 'pre-check=0, post-check=0, max-age=0, max-stale = 0', false); // HTTP/1.1
Response::header('Pragma', ' public');
Response::header('Expires', 'Sat, 26 Jul 1997 05:00:00 GMT');                  // Date in the past  
Response::header('Expires', '0', false); 
Response::header('Last-Modified', gmdate('D, d M Y H:i:s') . ' GMT');
Response::header('Pragma', 'no-cache');
和下面的html

<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />

它会破坏css/js还是只是让html不得不重新加载。

你的问题中的“我只是想缓存html页面”有点让人困惑。据我所知,您的问题是浏览器缓存了内容,但您希望禁用缓存。:)

无论如何:

在PHP输出中添加的内容只会影响PHP输出。如果您在PHP脚本中生成HTML,那么只有PHP生成的HTML会受到影响,而不会影响其他内容

奖励答案:


如果希望更改.js和.css文件的缓存策略,则需要手动处理Apache的httpd.conf或.htaccess(假设Apache是您的HTTP服务器)

一种方法是将
?t=
附加到脚本和css URL。这将100%禁用缓存。