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

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

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

12 months

ExpiresByType image/jpg access plus 12 months

ExpiresByType image/png access plus 12 months

EXpiresByType application/x-shockwave-flash access plus 12 months

EXpiresByType application/x-javascript access plus 12 months

ExpiresByType video/x-flv access plus 12 months

b)对目录

对目录的配置就是在apache主配置文件中标签内加入如下参数即可

AllowOverride None

Options None

Require all granted

ErrorDocument 404 /l

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 12 months

ExpiresByType image/jpg access plus 12 months

ExpiresByType image/png access plus 12 months

EXpiresByType application/x-shockwave-flash access plus 12 months

EXpiresByType application/x-javascript access plus 12 months

ExpiresByType video/x-flv access plus 12 months

c)对虚拟主机

对虚拟主机的配置就是在apache的虚拟主机配置文件中添加如下参数即可

ServerAdmin

DocumentRoot /www/html

ServerName www.sunsky.pw

ServerAlias sunsky.pw

CustomLog |/usr/local/sbin/cronolog /app/logs/www_access_%Y%m%d.log combined

ErrorLog |/usr/local/sbin/cronolog /app/logs/www_error_%Y%m%d.log

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 12 months

ExpiresByType image/jpg access plus 12 months

ExpiresByType image/png access plus 12 months

EXpiresByType application/x-shockwave-flash access plus 12 months

EXpiresByType application/x-javascript access plus 12 months

ExpiresByType video/x-flv access plus 12 months

以上三种配置任何一种配置之后,对apache服务器进行优化重启,然后用火狐或者google游览器的YSlow插件进行缓存效果查看。

扩展:expires模块的语法

上面已经的操作就是实现apache的缓存功能。其中,expires后面的参数你也可以根据需求自行更改,缓存时间也是一样可以更改的。

这里我对expires的模块语法进行一些细说

expires模块用到了ExpiresDefault和EXpiresByType两个指令,下面是这两个指令的语法。

ExpiresDefault “ [plus] {}*”

EXpiresByType type/encoding [plus] {}

其中的参数有3个:access,now(等价于‘access’),modification

plus关键字是可选的。

必须是整数,确保可以atoi()所接收。(atoi可以把字符串转换成长整型数)

参数类型:years,months,weeks,days,hours,minutes,seconds

下面用几个例子带大家理解下

例如:下面3个指令都表示文档默认的有效期是一个月

ExpiresDefault access plus 1 month

ExpiresDefault access plus 4 weeks

ExpiresDefault access plus 30 days

有效期可以通过增加“”子句进一步调整

ExpiresByType text/html access plus 1 month 15 days 2 hours

ExpiresByType image/gif modification plus 5 hours 3 minutes

注意:如果你使用基于最后修改日期的设置,“Expires”头将不会被添加到那些并非来自于硬盘文件的内容,这是因为这些内容并不存在“最后修改时间”的属性。

基准时刻可以是源文件的最后修改时刻或者客户端对源文件的访问时刻,至于使用那一个则由指定。“M”表示源文件的最后修改时刻,“A”表示客户端对源文件的访问时刻,需要注意的是和seconds之间没有空格。

这两个基准的差别是很微妙的。如果使用“M”,所有当前缓存中的文档副本都将在同一时刻过期,这个可能对定期更新的URL(比如位于同一位置的每周通告)很有好处。如果使用“A”,则每个客户端所得到的有效期是不一样的,这个可能对那些几乎不更新的图片很有好处,特别是对于一组都引用相同图片的相关文档。

缓存优化对企业来说是至关重要了的,不同的公司类型,缓存的类型和时间又各不相同,大家具体可以用YSlow对淘宝,京东,新浪,谷歌等站点进行测试,看看他们的缓存时间是多少,并思考下为什么那样设置。

虽然缓存的设置

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

网站地图

Top