一个利用 Squid Cache 的 PHP 配置例子

由 徐永久 发表于 2005年05月18日 15:15。

Squid 缓冲服务器能极大的提高服务器性能,特别是对于数据库负载比较大的情况下,运用 Squid 更加高效。 现在很多大型网站都利用 Squid 来加速,本文通过 PHP 代码的例子,解释了怎样利用 Cache 来实现页面缓冲。

修改前,不利用缓冲的代码:
/*
header( ‘Expires: Mon, 26 Jul 1997 05:00:00 GMT’ );
header( ‘Last-Modified: ‘ . gmdate( ‘D, d M Y H:i:s’ ) . ‘ GMT’ );
header( ‘Cache-Control: no-store, no-cache, must-revalidate’ );
header( ‘Cache-Control: post-check=0, pre-check=0’, false );
header( ‘Pragma: no-cache’ );
*/

修改后的代码:
header(“Expires: ” .gmdate (“D, d M Y H:i:s”, time() + 60 * 10). ” GMT”);
header( ‘Last-Modified: ‘ . gmdate( ‘D, d M Y H:i:s’ ) . ‘ GMT’ );
// header( ‘Last-Modified: ‘ . gmdate( ‘D, d M Y H:i:s’ )+3600 . ‘ GMT’ );
header( “Cache-Control: public” );

对于需要 Basic 认证的网页,如果需要缓冲,必须使用最后一句 public 的头。