我有一个基于php的网站,并希望浏览器缓存图像为30天..我使用的是共享主机解决方案,其中我无法访问apache配置来启用mod-headers或其他模块,因此无法使用htaccess机制。
我的网站是一个常规的php应用程序,有html内容和图片。我想浏览器缓存图像只。我看过php的"header“函数,但找不到一种只强制图片缓存的方法。我该怎么做呢?
谢谢
发布于 2011-07-19 19:43:36
据我所知,如果您不能访问Apache来设置头文件,那么您唯一的其他选择就是从PHP脚本提供图像,这样您就可以使用PHP头文件方法来设置头文件。
在这种情况下,您需要编写一个PHP图像处理程序,并将所有的图像标记替换为对此处理程序的调用(例如http://mysite.com/imagehandler.php?image=logo.png)。然后,您可以让imagehandler.php脚本从文件系统中检索图像,设置mime类型和缓存控制标头,然后将图像传输回客户端。
您可以自己编写,或者如果您使用google搜索,您将找到图像处理程序PHP脚本。无论哪种方式,请确保您的重点是安全性-不要允许客户端从您的web服务器检索任意文件,因为这将是一个相当大的安全漏洞……
https://stackoverflow.com/questions/6746515
复制相似问题