> 백엔드 개발 > PHP 튜토리얼 > 图片缓存的问题

图片缓存的问题

WBOY
풀어 주다: 2016-06-23 13:26:28
원래의
1000명이 탐색했습니다.

一个页面有很多静态的比较大的图片要怎样做好缓存?


回复讨论(解决方案)

一把用户访问了图片,就会缓存了啊

图片是静态文件,如果可以做浏览器缓存。
可以设置header expired 时间和gzip(压缩图片) 来提高访问速度

设置时间可以利用apache的 mod_expires,在httpd.conf中添加

<IfModule mod_expires.c>  <IfModule mod_expires.c>  ExpiresActive on #开启  ExpiresDefault A300 #默认  ExpiresByType text/html A300  ExpiresByType text/css A2592000 # 30天  ExpiresByType image/gif A2592000  ExpiresByType image/jpeg A2592000  ExpiresByType application/x-javascript A2592000  </IfModule>
로그인 후 복사
로그인 후 복사


具体方法参考: http://blog.csdn.net/fdipzone/article/details/8916755

浏览器默认是会缓存,但如果图片是很久都不会改变的,可以用我提供的方法设置缓存时间长一些。

2楼正解!!!!

图片是静态文件,如果可以做浏览器缓存。
可以设置header expired 时间和gzip(压缩图片) 来提高访问速度

设置时间可以利用apache的 mod_expires,在httpd.conf中添加

<IfModule mod_expires.c>  <IfModule mod_expires.c>  ExpiresActive on #开启  ExpiresDefault A300 #默认  ExpiresByType text/html A300  ExpiresByType text/css A2592000 # 30天  ExpiresByType image/gif A2592000  ExpiresByType image/jpeg A2592000  ExpiresByType application/x-javascript A2592000  </IfModule>
로그인 후 복사
로그인 후 복사


具体方法参考: http://blog.csdn.net/fdipzone/article/details/8916755



虚拟主机不支持gzip怎么办?

一旦用户访问了,就应该用chache缓存下来,然后保存到服务器

一旦用户访问了,就应该用chache缓存下来,然后保存到服务器



缓存到服务器?下次访问还是要到服务器读取图片,读取过程中还是会产生很多时间,数据缓存到服务器这个很好,我已经做了,现在主要是读取图片占用太多时间,强制更新6.2s左右,浏览器缓存后1.5s左右

在网站上使用体量巨大的图片,应采用大小图方案
点击加载的大图也应切割成若干小图块

在网站上使用体量巨大的图片,应采用大小图方案
点击加载的大图也应切割成若干小图块



“大小图方案”是什么意思?是先加载小图,再加载大图?能说具体点吗?

不支持gzip就设置到支持,一般都是可以支持的。

不支持gzip就设置到支持,一般都是可以支持的。



我咨询过西部数据的客服了,他们说我买的不支持,除非换主机

是否支持 gzip 并不重要,gzip 只是加快了数据的传输速度(压缩后数据变小)
但图片数据大多是压缩的,再次压缩并没有什么效果,甚至数据反而变大


不支持gzip就设置到支持,一般都是可以支持的。



我咨询过西部数据的客服了,他们说我买的不支持,除非换主机

那设置长点的缓存时间就好了。

原始图片压缩成多张不同大小的图片处理

谢谢各位,我用的jquery.lazyload.js插件配合后台读取,先加载了部分图片,速度快很多了

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿