php 没有一致地显示文件的更改

Ric*_*ard 4 php opcache php-5.5

我正在对 php 文件进行更改,但有时它们没有显示。有时他们会立即表现出来。有时我必须等待几分钟。我已经检查并关闭了所有我能想到关闭的缓存。这个问题是不一致的,并且很难一致地重复。

Ric*_*ard 6

回答我自己的问题...

我花了相当长的时间进行试验以一致地重现这种行为。我不得不让服务器静置几分钟而不刷新任何页面。然后,如果我在刷新页面之前更改文件,则更改会立即显示,所有后续更改也会立即显示。如果我先刷新页面,然后对文件进行更改,则在刷新 10-20 次左右之前不会显示后续更改。

顺便说一句,html 文件无论如何都会显示所有更新,所以这是一个 php 问题。

在找到答案之前,我尝试过...

  • 关闭 nginx 缓存
  • 将 nginxconf 设置为sendfile off;
  • 将 nginxconf 设置为expires off;

...这些都不起作用。然后我发现它实际上是OPcache。我通过将 php.ini 文件更改为此(并重新启动所有服务)解决了该问题

opcache.enable=0