apache优化

1、为什么要优化apache

在用户访问比较大时,apache工作效率会变低,在不提升硬件配置的情况下,优化apahce服务,能够缓解或增加访问量。提升web站点的安全性,提升数据流量等。

2、9种常用的优化方式

1.保持连接:保持客户端和web服务器之间的会话连接,减少三次握手和四次挥手的次数。

2.网页压缩:web服务器传输数据时,对数据进行压缩,节省流量。

3.网页缓存时间:调整网页缓存时间的长短

4.隐藏apache版本号:防止黑客通过版本号找到漏洞。

5.防盗链:防止其他网站盗链本站点的图片或视频,减少CPU运算量。

6.ab压力测试:测试服务器和apache服务的访问量,并发量等

7.apache日志分析:查看apache的日志,分析访问状态,统计访问数据。

8.apache日志分割:多个日志文件同时记录日志信息,大并发量访问时的日志写入。

9.apache工作模式:调整工作模式,完成不同并发量的处理。


3、保持会话

客户端在访问过程中,会发送链接请求(三次握手)和断开请求(四次挥手),而且是每个页面访问会发送一次。大量的链接请求占用网络带宽和服务器的CPU运算。

配置选项:

在httpd.conf文件中添加选项:

keepalive  ON|OFF        是否打开保持连接功能。根据网站的并发请求量决定是否打开,高并发时打开,并发量不高时可选择关闭。
keepalive  timeout        一次TCP连接多次HTTP请求之间的最大间隔时间,两次HTTP请求超过此时间连接将会断开。默认5秒
MaxKeepAliveRequests    一次TCP连接能够传输的最大HTTP请求数量。默认100


vim  /etc/httpd/conf/httpd.conf
添加:
keepalive on
keepalivetimeout 60
maxkeepaliverequests 300


4、网页压缩

对web服务器发送的数据使用gzip格式进行压缩后,传输给浏览器,能够加快网页加载的速度,节省带宽,有利于搜索引擎抓取。但是会占用一定的CPU运算量。

Apache支持的压缩模块:

mod_gzip:类似gzip算法,压缩速度慢,压缩比例高,CPU占用略高,适用于访问量比较低的服务器。

mod_deflate:类似gzip算法,压缩速度快,压缩比例低,CPU占用低,适用于访问量比较高的服务器。


安装开源apache时,输入配置选项  --enable-deflate  启用压缩算法。


AddOutputFilterByType  DEFLATE  text/html  text/plain  text/css  text/xml text/javascript        对什么格式的内容启用压缩
DeflateCompressionLevel  9        压缩级别为9,范围是1-9,数字大压缩率高
SetOutputFilter  DEFLATE        启用deflate压缩方式

vim  /etc/httpd/conf/httpd.conf
添加:
AddoutputFilterByType  DEFLATE  text/html  text/plain  text/css  text/xml text/javascript
DeflateCompressionLevel  9
SetOutputFilter  deflate
 

1、apache页面缓存时间

1.客户端能够对网页内容进行缓存的集中情况:
    1)服务器允许客户端进行页面缓存
    2)服务器站点是静态页面
    3)动态网站只能缓存结构,不能缓存数据库中的数据。
    4)图片,视频,flash等可以缓存,但不能缓存人机对话的内容(游戏类)。


2.缓存的作用:
1)能够加快客户端访问重复页面内容的速度,如刷新页面或返回主页,后退等操作。
2)节省服务器的数据处理量和数据传输量。

3.配置选项:
vim /etc/httpd/conf/httpd.conf
添加:
<IfModule mod_expires.c>
  ExpiresActive On                     ##启用页面缓存时间
  ExpiresDefault "access plus 60 seconds"      ##设置默认缓存1分钟  
</IfModule>


4.源代码安装的apache需要在安装前配置模块

--enable-expires    启用缓存时间模块

2、隐藏apache的版本号

作用:防止黑客通过查询版本号,检测到响应的漏洞进行攻击。

1.rpm安装的apache修改方式:

vim  /etc/httpd/conf/httpd.conf
添加:
ServerTokens Prod       ##显示最少的信息,默认是Full显示完整信息
ServerSignature Off        ##生成页面的页脚


2.源代码安装的apache修改方式:


vim  /usr/local/httpd/conf/httpd.conf
添加:
ServerTokens Prod       ##显示最少的信息,默认是Full显示完整信息
ServerSignature Off        ##生成页面的页脚


3、防盗链

作用:本地网站上传的图片被其他网站盗用,在大量用户访问的情况下,本地网站的CPU运算量会大幅度提升。防盗链是为了禁止其他网站链接图片。

超链接:点击超链接后,页面会转到指定的位置。
盗链:在页面中显示其他指定页面的内容,由其他服务器进行运算。

vim  /etc/httpd/conf/httpd.conf
在默认站点发布容器<Directory /var/www/html></Directory>中添加:

rewriteengine on
    RewriteCond %{HTTP_REFERER} !^http://本地域名或IP地址/.*$  [NC]       #格式:gg.cn
    RewriteCond %{HTTP_REFERER} !^http://本地域名或IP地址$  [NC]
    RewriteCond %{HTTP_REFERER} !^http://本地完整域名或IP地址/.*$  [NC]    #格式:www.gg.cn
    RewriteCond %{HTTP_REFERER} !^http://本地完整域名或IP地址$  [NC]
    RewriteRule .*gif|jpg|png|swfgif|jpg|png|swf$ http://本地完整域名或IP地址/error.html  [R,NC]
    
    Require all granted


4、ab站点压力测试

作用:对服务器的高并发量模式工作,或高数据流传输工作进行测试,保障服务器上线后的稳定性。

使用Apache自带的ab命令进行初步测试。

语法:ab  -n 请求数总和  -c  并发用户数  网站网址

ab -n 10000 -c 1000  http://192.168.10.2/index.html


压力测试过程中,除ab以外,还会使用以下方法:

1.使用黑客工具对端口并发链接进行测试,如DDOS测试
2.使用多用户在线访问测试。如:将服务器挂在广域网后,找很多用户在线测试(公测)
3.通过虚拟客户端,使用测试工具进行高并发量测试。
4.找专业测试团队进行测试。
 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库从删库到跑路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值