使用图像输出发送哪些标题(打开时image.php允许用户下载图像)将该图像的缓存时间设置为3天(而不是从用户端重新下载图像)?
如何压缩图像并将其压缩,我应该发送哪些标题告诉浏览器该图像是否已压缩?
谢谢。答案 0 :(得分:0)
嗯,最简单的压缩方法是在运行apache的情况下从htaccess级别启用deflate或gzip。如果没有,您可以在文档开头添加ob_gzhandler()
函数作为ob_start()
回调,如下所示:
<?php
if( !ob_start("ob_gzhandler") ) {
ob_start();
}
//Feel free to echo image data and whatnot, the callback deals with the headers, compatibility, and compression!
?>
请注意,这需要zlib扩展名。
您也可以add this function as the ob callback in the php.ini file或启用zlib.output_compression指令。
至于设置缓存,只需在输出文本之前添加此header()
调用:
<?php
header('Cache-Control: max-age='.(5184000 * 3).', must-revalidate'); //Cache should last for 3 days
?>
答案 1 :(得分:0)
这些标题应该没问题