【问题标题】:php force page to reload includesphp强制页面重新加载包括
【发布时间】:2016-02-27 17:40:15
【问题描述】:

我正在使用 php jquery Sass bootstrap 等开发网站

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

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

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

编辑: 我意识到这个问题发生在我对 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 文件,这也没有解决它。

【问题讨论】:

  • 您要重新加载什么类型的页面? php、html、css、javascript?
  • 所有页面都是php页面,但包含(css或javascript)是我想要加载而无需退出页面
  • 这可能会有所帮助,但我最后一次注意到这种情况是因为我添加了一个甚至没有被检测到的 Javascript 包含,并且我从字面上刷新了该页面并且 firefox 没有看到它(通过开发人员工具)关闭页面并将其重新启动,然后Firefox看到它
  • 然后尝试在您的 html -> index.html?version=1234 和 php -> index.php?version=1234 上使用该方法。例如index.php?version=<?php echo time();?>

标签: javascript php jquery html css


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-02-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多