一、apache 利用浏览器缓存
让浏览器缓存CSS、JS、图片、静态文件等是很重要的事情,这样可以减轻服务器的压力,省的浏览器经常要去服务端下载这些静态文件。下面看看配置方法吧。
1.开启apache扩展模块mod_expires.so,在apache的配置文件中加入下面一行代码。
LoadModule expires_module modules/mod_expires.so
2.配置缓存,在apache配置文件中加入下面一段代码
<IfModule expires_module> #打开缓存 ExpiresActive on #css文件缓存7200000/3600/24=83天 ExpiresByType text/css A7200000 #js文件缓存7200000/3600/24=83天 ExpiresByType application/x-javascript A7200000 ExpiresByType application/javascript A7200000 #html文件缓存7200000/3600/24=83天 ExpiresByType text/html A7200000 #图片文件缓存7200000/3600/24=83天 ExpiresByType image/jpeg A7200000 ExpiresByType image/gif A7200000 ExpiresByType image/png A7200000 ExpiresByType image/x-icon A7200000 </IfModule>
3.测试
访问有图片,css,js,html的文件
http://localhost:8080/test/test.html
用firebug可以看到响应头信息包含
Expires Tue, 13 Sep 2011 15:41:09 GMT
Cache-Control max-age=7200000
如何把不配置缓存,上面的头信息就没有,哈哈,试试吧 。
二、apache压缩页面
1. 找到并打开apache/conf目录中的httpd.conf文件
2. httpd.conf中打开deflate_Module和headers_Module模块,具体做法为将 如下两句前面的#去掉:
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
3. 在httpd.conf文件底部加入如下代码配置需要压缩的文件 或者 .htaccess
<IfModule mod_deflate.c> SetOutputFilter DEFLATE SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary AddOutputFilterByType DEFLATE text/* AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule>
4.重启apache
在线查看页面压缩情况
http://tool.chinaz.com/Gzips/