【问题标题】:PHP file will not update in browserPHP文件不会在浏览器中更新
【发布时间】:2012-07-07 12:46:38
【问题描述】:

出于某种奇怪的原因,每次我更新文件时,它都不会在浏览器中更新(localhost - wampserver)。更加具体。如果我有一个简单的 php 脚本:

echo "hello world";

它在浏览器中运行良好,并显示文本“hello world”。

但是,如果我将其更新为

echo "goodbye world";

然后刷新浏览器,什么也没有发生。文本仍然是“hello world”。

这以前没有问题,并且非常令人耳目一新。我尝试清除浏览器缓存,在多个浏览器上进行测试,重新启动我的 wamp 服务器,然后重新启动计算机。似乎没有任何效果。

似乎更新代码的唯一方法是从我的 IDE 运行脚本。然后它会在浏览器中显示更新的代码。如何解决这个问题?我希望它恢复到原来的样子,并且能够从浏览器中刷新。

使用 wampserver php - 5.3.13、apache 2.2.22

【问题讨论】:

  • 检查您是否安装或启用了任何缓存机制。
  • @m4k 尝试寻找任何类型的缓存机制。什么都找不到。我最近安装的唯一东西是 vmware 工作站,我认为这与此无关。
  • @HyunminKi​​m:确保您正在访问编辑后的文件本身。
  • @mithunsatheesh 当然。我将文件作为test.php保存在某个目录下,然后在浏览器中打开与test.php同目录下的文件。
  • 我最终重新安装了 wamp。似乎再次完美地工作。感谢您的所有意见!

标签: php browser


【解决方案1】:

您的脚本使用opcache 功能缓存在内存中。在php.ini中禁用它:

opcache.enable = 0

但您还必须重新启动服务器。如果您使用托管,请使用控制面板重新启动或尝试将 php 版本更改为另一个并还原。

【讨论】:

【解决方案2】:

由于这是在 Google 上搜索此类问题时的第一个结果,我想补充一点,如果您启用了 opcache,则不一定需要完全禁用它

您可能将opcache.validate_timestamps 设置为0,这将停止根据上次修改日期自动更新您的文件。

在你的 php.ini 文件中修改这个参数:

opcache.validate_timestamps = 1

重启 php-fpm 服务(或 apache,取决于你的情况),你的脚本在下次执行时应该是最新的。

【讨论】:

    【解决方案3】:

    我建议重新启动服务器并禁用 php.ini 中的脚本:

    opcache.enable = 0
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-06-20
      • 1970-01-01
      • 2021-12-03
      • 1970-01-01
      • 1970-01-01
      • 2017-10-08
      • 2019-09-20
      • 2019-09-21
      相关资源
      最近更新 更多