• 购物车  0

    我的购物车

    0 件商品,共计 0
    去购物车结算
  • 最新公告 

    未读消息 :  忽略

    查看全部

  • 常见问题
  • 有问必答
  • 网站备案

欢迎您来到禾城数码,开始互联网之旅!

关于PHP的缓存问题

在过去构建网站和匆匆建一些HTML页面一样容易时,因为有网络服务器读取文件,向浏览器递交网页就再简单不过了。站点的访问者几乎能够立即看到小且为纯文本的页面,除非他们使用了特慢的调制解调器。一旦下载了页面,浏览器就将她缓存在本地计算机的某个地方。因此,再次请求此页面时,由服务器对页面执行快速检查以确保页面没有更新后,浏览器就可以显示缓存在本地的版本。提供页面尽可能快速而有效,这样每个人都高兴。

动态网页出现,并引入两个问题,破坏了其美好的一面:接受动态网页请求时,必须要完成一些中间处理,例如由PHP引擎执行脚本。此过程在网络服务器开始将输出传递到浏览器之前引入了一个延时。只涉及到简单的PHP脚本时,延时并不明显;但是对一个更加复杂的应用程序而言,在页面达到能够递交的状态之前,PHP引擎有很多工作需要做,这种额外的工作就导致了在用户请球和浏览器中页面的实际显示之间有明显的时滞。

典型的网络服务器采用文件修改时间来提醒网络浏览器被请求页面的寿命,使浏览器能够采取适当的缓存行为。使用动态网页,实际的PHP脚本可能仅需要偶尔修改,与此同时,它所显示的内容会频繁改变。网络服务器还不具备有辨别地更新数据库的能力,因此它不发送最近修改的日期。如果客户端没有指明数据能够保持多长的有效期,它将采取猜的办法。如果浏览器决定使用一个本地缓存的已经过期的页面版本,这样就会有问题;或者浏览器决定向服务器发送一个人新页面拷贝的请求,但实际上页面并没有更新,这样也有问题,因为这样会造成沉冗的请求。网络服务器总是对新近构建的页面版本作出反应,而不管数据库中的数据实际上是否被改变。

为了避免网站访问者看到的内容是过期的,大多数网站开发者使用一个meta标签或HTTP头来告诉浏览器不要再使用缓存的页面版本。然而,这否定了网络浏览器缓存网络页面的本能,必然会导致一些非常不利的因素出现。比如,由动态页面提交的内容可能每天仅更新一次,因此,浏览器缓存页面能够获取切实的好处--即使只有24小时。

linux虚拟主机吧">PHP程序想要更完美的运行,选择我们的Linux虚拟主机吧


来源: greatidc.com
阅读:3796
日期:2013/5/18

  >> 相关文章
 
Top

客服热线

0573-80897175