微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > Linux网站架构系列之apache----调优篇

Linux网站架构系列之apache----调优篇

时间:10-08 来源:互联网 点击:

tFilterByType DEFLATE text/html text/plain text/xml #仅压缩限制特定的MIME类型文件:

AddOutputFilterByType DEFLATE application/javascript

AddOutputFilterByType DEFLATE text/css

AddOutputFilterByType DEFLATE image/gif image/png image/jpe image/swf image/jpeg image/bmp

#DeflateFilterNote ratio #在日志中放置压缩率标记,下面是记录日志的,这个功能一般不用

#LogFormat '%r %{outstream}n/%{instream}n (%{ratio}n%%)' deflate

#CustmLog logs/deflate_log.log deflate

下面是朋友公司的另外一种压缩配置,有兴趣的朋友们也可以操作操作。

DeflateCompressionLevel 9

SetOutputFilter DEFLATE

DeflateFilterNote Input instream #声明输入流的byte数量

DeflateFilterNote Output outstream #声明输出流的byte数量

DeflateFilterNote Ratio ratio #声明压缩的百分比

#LogFormat '%r %{outstream}n/%{instream}n (%{ratio}n%%)' deflate #声明日志类型

#CustomLog logs/deflate_log.log deflate #声明日志类型

AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css application/javascript #仅压缩限制特定的MIME类型文件

执行上面的添加后,我们对apache进行优雅重启

[root@c64-web /]# /usr/local/apache/bin/apachectl graceful

下面访问我们的网站,然后用火狐或者google游览器的YSLOW插件进行压缩效果的查看

怎么样,是不是已经进行压缩了啊!

我们在企业生产环境中时,在启用mod_deflate时,一定要注意,对于太小的文件和某些格式的图片不要对它们进行压缩,有可能越压越大。

下面给出大家几乎是所有的AddOutputFilterByTypeDEFLATE后跟的压缩文件类型,大家可以参照选择。

text/plain text/html text/php text/xml text/css text/javascript

application/xhtml+xml application/xml application/rss+xml application/atom_xml application/x-javascript application/x-httpd-php image/svg+xml image/gif image/png image/jpe image/swf image/jpeg image/bmp

八、mod_expires缓存功能

虽然我们上面通过mod_deflate模块启用了压缩,从很大程度上节约了企业带宽,降低了企业成本。可是由于现在越来越多的图片、脚本、css和flash被嵌入到页面中,当客户访问站点势必会做很多次的http请求,因此我们还可以通过mod_expires缓存模块来设置ExpiresHeader来缓存这些文件。Expires是通过header报文来指定特定类型的文件在游览器中的缓存时间的。平时,我们大多数的图片,flash在发布之后都是不需要经常修改的,因此做了缓存之后,游览器第一次从服务器下载之后,就不需要再从服务器下载这些文件而是直接从游览器缓存中读取了。这样客户访问页面的速度就会大大加快,企业的带宽压力也得到了缓解。

1、mod_expires模块检查及安装

检查mod_expires模块是否安装的方法如下:

[root@c64-web /]# /usr/local/apache/bin/apachectl -M | grep deflate

expires_module (static) #此种结果为编译安装时装的

[root@c64-web /]# /usr/local/apache/bin/apachectl -M | grep deflate

expires_module (shared) #此种结果为DSO方式安装的

安装了的话,就可以直接进行压缩配置了,如果没有安装,下面为安装方法

a)编译方式安装

编译的时候跟上--enable-expires即可实现安装

b)DSO方式安装

[root@c64-web /]# cd /server/tools/;#切到apache源码包mod_expires所在的目录下

[root@c64-web filters]# /usr/local/apache/bin/apxs -c -i -a mod_expires.c #以dso的方式编译安装到apache中

[root@c64-web filters]# ll /usr/local/apache/modules/mod_expires.so #检查mod_deflate是否安装,成功安装这里会显示出该文件

-rwxr-xr-x 1 root root 37439 11月 5 02:02 /usr/local/apache/modules/mod_expires.so

2、配置缓存参数

注意如果我们是编译安装时已经编译进去的,此时我们需要先将主配置文件中

LoadModule expires_module modules/mod_expires.so

此行解锁后再进行下面操作,不然会报错。

缓存的用法有3种,分别问对全局,对目录,对虚拟主机。

a)对全局

对全局的配置就是在apache主配置文件的末尾加入如下参数即可

ExpiresActive on

ExpiresDefault access plus 12 month

ExpiresByType text/html access plus 12 months

ExpiresByType text/css access plus 12 months

ExpiresByType image/gif access plus 12 months

ExpiresByType image/jpeg access plus12

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top