前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >mamp环境下禁止页面缓存

mamp环境下禁止页面缓存

作者头像
timhbw
发布2018-06-06 15:10:55
2.1K0
发布2018-06-06 15:10:55
举报
文章被收录于专栏:Timhbw博客

2018-06-0312:52:23 发表评论 1℃热度

MAMP Pro是一款适用于Mac操作系统的软件。MAMP PRO是专业级版本的经典本地服务器环境的os x软件。MAMP这几个首字母代表苹果的OSX系统上的Macintosh、Apache、MySQL和PHP,顾名思义,你应该知道MAMP的强大功能 啦!MAMP 内含 Apache 服务器、PHP 安装套件以及MySQL安装套件。只要轻松点选就能安装架站/讨论区/论坛必备的元件。透过Web界面稍作设定,在苹果电脑上架设自己专属的网站,就是这 么简单又开心的事情和windows下的XAMPP、WAMP,Linux下的LAMP一样。都是Apache+Mysql+PHP的集成环境。

本地使用MAMP调试的时候,发现代码修改后,没有立即生效,之前以为是浏览器缓存问题,但是在控制台已经勾选了Disable cache,问题还是存在,只能多刷新几次才能生效。之前都没时间解决这个问题,今天周末,一步一步排查,终于找到问题所在,特此分享,也算是个备忘录。

1、测试问题

写了一个简单的语句,方便调试缓存问题。改变x的值发现不是立即生效,和之前遇到的情况一样,说明问题是存在的,不是偶然。

  1. <?php
  2. $x = 10;
  3. if ($x == 10) {
  4. echo $x;
  5. } else {
  6. echo "测试";
  7. }
  8. //end

2、逐步排查

2.1浏览器缓存

打开浏览器开发者工具,勾选Disable cache,重新测试,发现还是无效,与浏览器缓存无关。

2.2 mamp中PHP默认的缓存组件

以上都排查完了,想一想还有什么会导致这样的问题,应该是其他缓存组件,例如:eAccelerator、memcached、xcache、APC,看了下mamp的php.ini配置文件,找到了原因:

  1. opcache.revalidate_freq=60

这个参数的作用:一定时间内检查文件的修改时间,这里设置检查的时间周期,单位为秒,mamp默认为60秒,所以才会导致修改代码后不立即生效的。

具体修改位置:

mamp环境下禁止页面缓存
mamp环境下禁止页面缓存

选择对应的PHP版本后修改,我的是PHP5.6.30,把 opcache.revalidate_freq的参数值修改为1:

mamp环境下禁止页面缓存
mamp环境下禁止页面缓存
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-06-031,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1、测试问题
  • 2、逐步排查
    • 2.1浏览器缓存
      • 2.2 mamp中PHP默认的缓存组件
      相关产品与服务
      云数据库 SQL Server
      腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档