web服务器集群-------Apache网页优化 (1)网页压缩
网页压缩
- 1.网页压缩(理论)
- 1.0.1 gzip介绍
- 1.0.2 Apache的压缩模块
- 1.0.3 HTTP压缩的过程
- 1.0.4 Apache的压缩模块
- 2. 网页压缩(实操)
- 2.0.1 mod_deflate 模块
- 2.0.2 mod_deflate 模块内容
- 2.0.3 配置mod_deflate模块启用
- 2.0.4 检测 httpd.conf
1.网页压缩(理论)
1.0.1 gzip介绍
- 配置Apache的网页压缩功能,是使用gzip压缩算法来对网页内容进行压缩后再传输到客户端浏览器
- 作用
- 降低了网络传输的字节数,加快网页加载的速度
- 节省流量,改善用户的浏览体验
- gzip与搜索引擎的抓取工具有着更好的关系
1.0.2 Apache的压缩模块
- Apache实现网页压缩的功能模块包括
- modgzip 模块
- moddeflate模块
- Apache 1.X
- 没有内建网页压缩技术,但可使用第三方mod_gzip模块执行压缩
- Apache 2.x
- 在开发的时候,内建了mod_deflate 这个模块,取代
mod_gzip o4Apache网防化x∶
- 在开发的时候,内建了mod_deflate 这个模块,取代
- mod_gzip模块与mod_deflate模块
两者均使用gzip压缩算法,运作原理类似 - mod_deflate压缩速度略快,而mod_gzip的压缩比略高
- mod_gzip对服务器CPU的占用要高一些
- 高流量的服务器,使用mod_deflate可能会比mod_gzip 加
载速度更快 - 启用网页压缩功能步骤
1.0.3 HTTP压缩的过程
- Web服务器接收到浏览器的 HTTP请求后,检查浏览器是否支持HTTP压缩
- (Accept-Encoding信息),如果浏览器支持HTTP压缩,Web服务器检查请求文件的后缀名,如果请求文件是HTML、CSS等静态文件,Web 服务器到压缩缓冲目录中检查是否已经存在请求文件的最新压缩文件。如果请求文件的压缩文件不存在,Web服务器向浏览器返回未压缩的请求文件,并在压缩缓冲目录中存放请求文件的压缩文件,如果请求文件的最新压缩文件已经存在,则直接返回请求文件的压缩文件。如果请求文件是动态文件,Web 服务器动态压缩内容并返回浏览器,压缩内容不存放到压缩缓存目录中。
1.0.4 Apache的压缩模块
- Apache 1.x系列没有内建网页压缩技术,使用的是额外的第三方mod gzip模块来执行压缩。而 Apache 2.x 官方在开发的时候,就把网页压缩考虑进去,内建了mod deflate 这个模块,用以取代 mod_gzip。两者都是使用的gzip 压缩算法,它们的运作原理是类似的。mod_deflate 压缩速度略快而mod gzip的压缩比略高。一般默认情况下,mod gzip 会比 mod_deflate多出4%~6%的压缩量。
- 一般来说modgzip 对服务器CPU的占用要高一些。mod deflate是专门为确保服务器的性能而使用的一个压缩模块,mod_deflate 需要较少的资源来压缩文件。这意味着在高流量的服务器,使用mod_deflate 可能会比 modgzip 加载速度更快。
- 简而言之,如果网站访问量较小,想要加快网页的加载速度,就使用mod_gzip。虽然会额外耗费一些服务器资源,但也是值得的。如果网站访问量较大、使用的是共享虚拟主机,且所分配系统资源有限,那么使用 mod_deflate 将会是更好的选择。
- 另外,从Apache 2.0.45开始,mod _deflate模块可使用 DeflateCompressionLevel指令来设置压缩级别。该指令的值可为1至(压缩速度最快,最低的压缩质量)9(最慢的压缩速度,压缩率最高)之间的整数,其默认值为6(压缩速度和压缩质量较为平衡的值)。这个简单的变化更是使得 mod_deflate 可以轻松媲美 mod gzip的压缩。
2. 网页压缩(实操)
2.0.1 mod_deflate 模块
- 检查是否安装了mod_deflate 模块
[root@localhost~]# apachectl-D DUMP_MODULESgrep "deflate"(2)安装 mod_deflate 模块
如果没有安装mod _deflate模块
需要停止Apache 服务
重新编译安装Apache参数中加入
2.0.2 mod_deflate 模块内容
[root@localhost ~]#systemctl stop httpd
[root@localhost ~]# cd/opt/httpd-2.4.29/
[root@localhost httpd-2.4.29]#./configure\
--prefix=/usr/local/httpd\
--enable-so\--enable-rewrite\
--enable-charset-lite\
--enable-cgi\
--enable-cgid\
--enable-deflate
- 在进行编译安装Apache时,出现如下错误
checking whether to enable mod _deflate…configure: error:mod_deflate has been requested but can not be built due to prerequisite failures
解决方案 :
*输入:yum install -y zlib -develenable-deflate 加入mode_deflate模块
[root@localhost httpd-2.4.29]#make && make install
2.0.3 配置mod_deflate模块启用
- 编译安装后,mod_deflate模块需要在 httpd.conf 文件启用才能生效。
[root@localhost httpd-2.4.29]vi/usr/local/httpd/conf/httpd.conf省略htpd.conf 文件内容,文件末尾加入以下内容启用modeflate模块
LoadModule deflate module modules/mod_deflate.so
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css
text/xml text/javascript image/png image/jpg
DsilateCompressionlevel9
SetOutputFilter DEFLATE
</IfModule>
- 第一行代表对什么样的内容启用 gzip 压缩,
- 第二行代表压缩级别,
- 第三行代表启用deflate模块对本站点的输出进行gzip 压缩。
2.0.4 检测 httpd.conf
- 检测 httpd.conf 语法并重启服务使配置生效
[root@localhost httpd-2.4.29]#httpd-t
Syntax OK
[root@localhost httpd-2.4.29]# systemctl restart httpd ######
把b照片传入/usr/local/httpd/htdocs/目下
[root@localhost httpd-2.4.29]#cd/usr/local/httpd/htdocs/---测试页---
<html>
<head>
<title>--压缩测试页--</title>
</head>
<body><h1>这是一个测试网页内容压缩的页面!!This is test Pagel!</h1>
<img src=b.jgp/>
</body>
</html>
---注意中文乱码问题解决方法如下---
vi/etc/httpd.conf AddDefaultCharset utf-8 service httpd restart
- 用wireshaerk抓包测试图片传输是否压缩
找到HTTP/1.1 200 OK(JPEG JFIF image)
找到Hyertext Transfer Protocol
找到HTTP/1.1200 OK\r\n
找到content-Encoding∶gzip\r\n ###这个地方表示图片压缩
web服务器集群-------Apache网页优化 (1)网页压缩相关推荐
- Web服务器集群——Apache网页与安全优化
第四章 Apache网页与安全优化 一.Apache网页优化 1.网页压缩 网站访问速度影响因素:应用程序响应速度.网络带宽.服务器性能.与客户端之间网络传输速度等.其中最重要的是=一个因素是Apac ...
- 利用LVS(Linux Virtual Server)系统实现Web服务器集群的负载均衡
利用LVS(Linux Virtual Server)系统实现Web服务器集群的负载均衡 LVS系统结构与特点: 1. Linux Virtual Server:简称LVS.是基于Linux服务器集群 ...
- Web服务器集群搭建
Web服务器集群搭建 1.需求分析 1.1.整体需求 搭建一个高可用的网站服务器集群,能承受高并发请求,能抵御一般的网络攻击,任何一台服务器的退服不影响整个集群的运作,并且能对各服务器的运行情况作出实 ...
- ipvsadm命令及lvs-nat类型web服务器集群
1.管理集群服务 (1)创建或修改 ipvsadm -A|E -t|u|f service-address [-s scheduler] -A 添加 -E 修改 -t 承载的应用层协议为基于TCP协议 ...
- nginx两台文件服务器集群,keepalived结合nginx状态检测脚本实现对web服务器集群的高可用...
实验环境 两台CentOS-7.5虚拟机 web1:10.0.11.203 web2:10.0.11.204 VIP :10.0.11.210 web类型:nginx 客户端:自用笔记本(win10) ...
- opnet对服务器的性能分析,一种Web服务器集群的动态反馈算法
摘要:介绍了Web服务器集群技术和负载均衡,针对静态的加权轮询算法和动态加权最小连接数算法的不足,提出一种基于动态反馈的加权最小连接数算法,该算法根据服务器的实时负载动态地改变权值的大小,再根据最小连 ...
- [转]使用简单的 5 个步骤设置 Web 服务器集群
文章来源:http://www.ibm.com/developerworks/cn/linux/l-linux-ha/index.html 使用简单的 5 个步骤设置 Web 服务器集群 使用 Lin ...
- Linux WEB服务器集群在电子商务中的应用
随着Internet 和电子商务的飞速发展,人们对电子商务网络服务器访问需求急剧增加,网络服务器的负载越来越大,采用服务器集群[1]已成为提高网络服务性能的有效途径.Web 服务器集群就是基于集群体系 ...
- .Net网站架构设计(二)Web服务器集群架构
什么是web负载均衡 服务器集群(Cluster)使得多个服务器节点能够协同工作,根据目的的不同,服务器集群可以分为: 高性能集群:将单个重负载的请求分散到多个节点进行处理,最后再将处理结果进行汇总 ...
- 性能测试服务器集群,刀片式服务器集群性能测试与优化技术研究
摘要: 本文描述的是针对刀片式服务器集群的性能测试与优化技术研究.本文介绍了刀片式服务器集群的构成和工作原理,刀片式服务器集群性能测试的意义,方法和工具,论述了刀片式服务器集群性能测试过程和不同方面的 ...
最新文章
- nginx 开发一个简单的 HTTP 模块
- 图论 ---- dijkstra变种dp Codeforces Div2 703 E. Paired Payment
- kafka channle的应用案例
- java if and_关于java:if语句中可以有两个条件吗
- List, Stack, and Queue
- Zabbix中文模式:图片下面的字符乱码
- list.php tid= field,dedecms列表页模板中调用当前栏目文章数
- python读取matlab文件_python写文件vs matlab写文件,由另一个s读取
- 信息学奥赛一本通(1165:Hermite多项式)
- 【笑话】骂人的最高境界
- @link标签 实现注释里面的类跳转
- caffe中pad的作用
- RHEL 6.4 安装DNS服务(bind-9.8 )
- R语言中5种正态性检验的方法
- Arduino学习笔记—— 猜数字游戏
- Redis(十一) -- Redis数据结构(八) -- Geo
- 阿里云快速搭建个人网站
- 如何从github上下载源代码
- LWN:在进程级别完成内核相同页面合并(KSM)控制!
- 关于解决'\u'开头的字符串转中文的方法