php强制页面重新加载包含


php force page to reload includes

我正在开发一个带有php jquery Sass bootstrap等的网站

按照我的设置方式,我有一个索引页面,它包含了头、css文件和js文件的所有包含,不同的页面加载了一个SESSION变量,该变量"告诉"索引要包含哪个页面(还有一个助手页面,它读取GET变量并将其存储在会话中,然后重定向回索引)。

我注意到,如果我在索引页上添加新的include或更改include,我必须关闭选项卡,然后在新的选项卡中再次打开它,才能使其生效。这不是什么大不了的事,但它浪费了我很多时间试图找到不存在的错误。

有人知道是什么原因造成的吗

编辑:我意识到,我对css文件(而不是php文件)所做的每一次更改都会出现这个问题,注销我的网站并重新登录会显示更改,所以我实际上不必关闭页面。这似乎是SESSION的一个问题。我还认为这可能与header(location:)命令有关,因为你不应该在html的主体中使用它,所以我把它切换到echo '<script type="text/javascript">window.location.replace();</script>';,这也没有解决它。还添加了:

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");

到我的header.php文件,这也没有解决问题。

看起来apache2正在缓存这些文件。我在apache2.conf文件中添加了一些行,告诉它不要缓存这个特定的站点,到目前为止一切都很好。如果这不是一个修复程序,并且只是暂时开始工作,我会再次更新。