The server of Apache (三)——网页优化
在企业中,部署apache后只采用默认的配置参数,会有很多问题,因为那些配置都是针对以前服务器配置的。
一、网页压缩
1、介绍
配置apache的网页压缩功能,是使用Gzip压缩算法来对apache服务器发布的网页内容进行压缩后再传输到客户端浏览器,这样做,降低了网络传输的字节数,加快网页的加载速度,节省流量,改善用户体验,并且使用gzip与搜索引擎的抓取工具有着更好的关系。
能实现压缩功能的模块有mod_gzip模块和mod_deflate模块。
Apache1.x系列没有内建网页压缩技术,但是可以用额外的第三方mod_gzip模块来执行压缩
Apache2.x官方开发的时候,就把网页压缩考虑进去,内建了mod_deflate这个模块,可以取代mod_gzip
两者的区别:
mod_gzip 对服务器的cpu的占用要高一些,高压缩比
mod_deflate 压缩速度略快
高流量的服务器,使用mod_deflate 可能会比mod_gzip加载速度更快
2、操作方法
apachectl -t -D DUMP_MODULES | grep "mod_deflate"(没有过滤出来这个模块的话,则需要安装)
cd /usr/src/httpd-2.2.17
service httpd stop
./configue --enable-deflate
make && make install
vim /usr/local/httpd/conf/httpd.conf
添加行
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript(代表对什么样的内容启用压缩)
DeflateCompressionLevel 9(压缩级别)
SetOutputFilter DEFLATE(代表启用deflate模块对本站点的输出进行gzip压缩)
service httpd start
为了方便对比,在启用mod_deflate模块前可使用抓包工具分析,如windows下的fiddler工具。
压缩前的抓包工具显示:

压缩后:

二、网页缓存
在通过mod_expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求。
1、操作步骤(和网页压缩步骤一样):
查看是否安装了mod_expire模块
apachectl -t -D DUMP_MODULES | grep "expires"(如果没有expires_modules(static),则说明编译时没有安装mod_expires)
service httpd stop
./configure --enable-expires……
make && make install
vim /usr/local/httpd/conf/httpd.conf
添加
<IfModule mod_expires.c>
ExpiresActive ON (开启expires模块)
ExpiresDefault"access plus 60 seconds" (对于http协议下任意格式的文档(html,css,js,图片等都是60秒之后过期))
</IfModule>
apachectl -t
service httpd start
2、使用抓包工具测试
设置缓存前

设置缓存后

The server of Apache (三)——网页优化的更多相关文章
- Apache网页优化与安全
目录 一.Apache网页优化 1.1.概述 1.2.gzip介绍 1.3.Apache的压缩模块 二.网页压缩实验 2.1.检查是否安装mod_deflate模块 2.2.重新编译安装Apache添 ...
- Apache网页优化
目录: 一.Apache网页优化概述 二.网页压缩 三.网页缓存 四.隐藏版本信息 五.Apache防盗链 一.Apache网页优化概述 在企业中,部署Apache后只采用默认的配置参数,会引发网站很 ...
- Apache——网页优化与安全
Apache--网页优化与安全 1.Apache 网页优化概述 2.网页压缩 3.网页缓存 4.隐藏版本信息 5.Apache 防盗链 1.Apache 网页优化概述: 企业中,部署Apache后只采 ...
- apache配置文件参数优化
1.CentOS5.8 x86_64位 采用最小化安装,系统经过了基本优化篇2.apache版本:httpd-2.2.293.源码包存放位置:/home/oldboy/tools4.源码包编译安装位置 ...
- SQL Server中的SQL语句优化与效率问题
很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解.比如: select * from table1 where name='zhan ...
- svn_linux + apache 实现网页访问svn
CentOS7:搭建SVN + Apache 服务器实现网页访问 1. 安装httpd 安装httpd服务: $ sudo yum install httpd 检查httpd是否安装成功: $ htt ...
- SQL Server中的SQL语句优化与效率
很多人不知道SQL语句在SQL SERVER中是如何执行的,他们担心自己所写的SQL语句会被SQL SERVER误解.比如: select * from table1 where name='zhan ...
- The server of Apache (四)——配置防盗链和隐藏版本信息
一.防盗链 防盗链就是防止别人的网站代码里面盗用我们服务器的图片.文件.视频等相关资源,比如我们的网页的图片有链接,别人把链接复制粘贴到他们的服务器页面里,图片不在他们自己的网站里,每次打开他们的网站 ...
- SQL Server中的三种Join方式
1.测试数据准备 参考:Sql Server中的表访问方式Table Scan, Index Scan, Index Seek 这篇博客中的实验数据准备.这两篇博客使用了相同的实验数据. 2.SQ ...
随机推荐
- LibEvent代码阅读--多缓冲区和零拷贝技术
http://blog.chinaunix.net/uid-20937170-id-4827550.html
- CentOS-6.4 编译安装ffmpeg加x264以及rtmp
CentOS 6.4-64位下编译ffmpeg几个简单步骤: 1.编译前环境准备: 2.下载源码: 3.编译,安装: ----------------------------------------- ...
- jquery-attr与prop
问题:经常使用jQuery插件的attr方法获取checked属性值,获取的值的大小为未定义,此时可以用prop方法获取其真实值,下面介绍这两种方法的区别: 1.通过prop方法获取checked属性 ...
- OpenGL ES & SDL(转载)
原帖:http://qqwt.blog.sohu.com/91060365.html 这个学期在学习嵌入式,由于老师的高要求.所以我们几个水手必须要完成一个项目,名字就叫OpenGL ES & ...
- 查询sqlserver数据库视图、存储过程等包含特定的字符串
SELECT A.name , B.definition FROM SYS.objects A INNER JOIN sys.sql_modules B ON A.object_id = B.obje ...
- Oracle-11g 中当执行 DBMS_STATS 时,因数据泵外部表文件缺失 Alert Log 告警 "ORA-20011、ORA-29913" 以及 "KUP-XXXXX"错误
:first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { border: 0; m ...
- 整理出一个比较实用的SqlHelper类 满足大多数情况的使用
/// <summary> /// SqlHelper类 by zy 2016-3-11 /// </summary> public sealed class SqlHelpe ...
- IDEA启动缓慢且运行卡顿
最近在自己的机器上用IDEA时启动竟然要半分钟,且启动后索引操作居然还需要等待很久.并且每次通过IDEA执行JAVA项目在启动和关闭时都会发生卡顿.明明机器的配置不错,这是为啥呢? 这是因为为IDEA ...
- 使用Dom4j操作XML数据
--------------siwuxie095 dom4j 是一个非常优秀的 Java XML 的 API, 用来读写 XML 文件 和操作 ...
- mybatis 框架 的简单使用
# Global logging configuration #在开发环境下日志级别要设置成DEBUG,生产环境设置成info或error log4j.rootLogger=DEBUG, stdout ...