停止在 MAMP 中缓存 PHP 5.5.3

2022-08-30 07:07:54

在装有 PHP 5.5.3 的新 Macbook 上安装了 MAMP。

重新加载和刷新不执行任何操作。还是一无所获。谷歌周围几分钟试图找出问题所在,回来刷新。它的工作原理。这到底是怎么回事?

我进入了php.ini并禁用了所有新的OPcache,并将默认缓存时间设置为0。向文档添加了标题以强制不进行缓存。还是同样的问题。这到底是怎么回事?

网络选项卡显示HTTP 200请求,因此文件中的任何新HTML呈现正常,但是需要由服务器呈现的新PHP被延迟并且直到某个预定的时间集过去才呈现,我不知道如何更改。这是怎么回事?index.php

我也在Safari中检查了这一点,所以它绝对是一个服务器的东西,阻止文件渲染。

有趣的是,如果我进入MAMP并将PHP版本更改为旧版本(PHP 5.2或其他东西),它将正常呈现,没有“缓存问题”。切换到 PHP 5.5,它就会挂起。在 MAMP 首选项中,5.5 的缓存选项甚至不存在,并且会自动禁用。


答案 1

禁用 OPCache

MAMP现在默认打开OPCache,您可以通过编辑php.ini文件来禁用它。确保编辑正确的 php.ini。

我自己也遇到了同样的问题。默认情况下,PHP 版本 5.5.3 的 MAMP 运行 OPcache,但您无法像使用较旧的 PHP 版本 5.2.17 那样在 GUI 中将其关闭。您必须手动注释掉php.ini文件(MAMP/bin/php/[version]/conf/php.ini)末尾的所有OPcache行,并确保停止并启动服务器以使更改生效。

我更新了URI,这些变化也可以通过更改php文件夹下的/conf/来反映,但似乎MAMP在重新启动后会忽略这些


答案 2

我在主 PHP 中添加了 opcache_reset(); 来阻止此缓存。

从中删除它对我没有任何帮助。php5.5.3/conf/php.ini

编辑

原来还有一个.如果我在那里评论它,它有效。/Applications/MAMP/bin/php/php5.5.3/conf/php.ini


推荐