|
|
|
|
移动端

8.4.1 常规配置(5)

《Linux服务器配置全程实录》第8章配置Web服务器,在本章中将介绍通过Apache配置HTTP、HTTPS、WebDAV、反向代理、安全配置、多种用户认证方式、虚拟主机,JSP环境搭建,LAMP环境搭建以及使用Lighttpd实现HTTP、HTTPS、虚拟主机等的相关内容。本节为大家介绍常规配置。

作者:张勤/杨章明来源:人民邮电出版社|2011-08-11 08:34

年前最后一场技术盛宴 | 1.27与京东、日志易、美团技术大咖畅聊智能化运维发展趋势!


8.4.1  常规配置(5)

在配置Listen参数时至少需要端口,如不指定IP地址,默认为本机IP地址。可以指定多个Listen参数指定侦听本机的某几个IP地址的端口。在下面的例子中尽管本机有两个IP地址指定但Apache处理192.168.0.10的80端口收到的客户端请求,如图8-18所示。

  1. Listen 192.168.0.10:80 
 
(点击查看大图)图8-18  Listen

11.超时配置

Apache超时设置一般是通过Timeout(单位:秒,在RHEL 5.x默认为120)参数设置,但影响Apache超时的参数还有以下几个。

(1)KeepAlive:是否支持持久连接(在RHEL 5.x默认为off)。KeepAlive 参数决定当处理完客户发起的HTTP请求后是否立即关闭TCP连接,如果KeepAlive 设置为On,那么用户完成一次访问后,不会立即断开连接,当后继有请求时,会继续在这一次TCP连接中完成,而不用重复建立新的TCP连接和关闭TCP连接,这样可以提高用户访问速度。如果使用了代理服务器推荐配置为on。

(2)MaxKeepAliveRequests:在持久连接期间,所允许的最大请求数量。指定为0时表示不作限制(在RHEL 5.x默认为100)。

(3)KeepAliveTimeout:在同一个客户客户端连接中,下一个请求的等待时间(单位为秒,在RHEL 5.x默认为15)。

KeepAlive参数的设置需要根据实际情况判断,比如Web服务器内存是否充足、网页内容是否由动态脚本生成、网页是否引用大量JavaScript、CSS或类型文件、是否使用代理服务器等等。下面是几种常见情况下KeepAlive参数的配置方法。

(1)当客户端浏览的网页,包含多个JavaScript、CSS或其他类似文件,并且这些文件位于同一台Web服务器时,一般将KeepAlive设置为"on"。

(2)当客户端浏览的网页,只包含少量JavaScript、CSS或其他类似文件,KeepAlive的设置作用不大。

(3)当客户端浏览的是动态网页,其内容大多通过动态脚本生成时,一般将KeepAlive设置为"off"。

12.连接配置

Apache提供以下几个参数用于对连接数量等进行配置。

(1)StartServers:指定启动Apache时启动的httpd进程个数(在RHEL 5.x默认为8)。

(2)ServerLimit:指定Apache允许配置同时处理的客户端请求的最大值。

(3)MaxClients:指定Apache可以同时处理的客户端请求(在RHEL 5.x默认为256),这是对Apache性能影响最大的参数。如果请求总数已达到这个值,那么下面的请求就要排队,直到某个已处理请求完毕。可以根据硬件配置和负载情况来动态调整这个值。256也是Apache默认情况最大的值,如果希望配置为大于256时,需要首先将ServerLimit参数的值配置为大于MaxClients的值。

(4)MinSpareThreads:Apache保持的最小空闲线程数(在RHEL 5.x默认为5)。

(5)MaxSpareThreads:Apache保持的最大空闲线程数(在RHEL 5.x默认为20)。如果空闲进程数大于这个值,Apache会自动删除某些多余进程。这个值一般不要设得过大,但如果设得比MinSpareServers小,Apache会自动把它调整为MinSpareServers+1。

(6)MaxRequestsPerChild:每个子进程被请求服务多少次后被删除掉。0表示不限制(在RHEL 5.x默认为4000)。

13.字符集配置

如果确定所有的页面都为GB2312时,可将AddDefaultCharset 参数设置为GB2312。但是如果有一些页面并不是GB2312时,这样设置会导致在页面中字符集设置(在页面中使用<META http-equiv="Content-Type" content="text/html; charset=gb2312" />)无效,这是因为Apache已经先将GB2312指定为页面默认的字符集,因此这种情况下最好的解决方法是将AddDefaultCharset 参数设置为Off,并在页面(对于动态页面也可以在对应的脚本引擎中设置,如PHP可以在/etc/php.ini通过default_charset参数设置)中设置字符集。

14.单IP并发配置

当在网站中提供了HTTP方式的下载时,目前大多数客户端在下载时都采用多线程下载工具(如迅雷、超级旋风、网际快车等),这样会给Web服务器带来巨大的压力。解决这类问题也有很多种方式,其中一种就是在Apache中对单个IP的并发数及下载速度进行限制。

单个IP并发数限制可通过mod_limitipconn模块实现。mod_limitipconn是一个非官方的模块(mod_limitipconn官方网站:http://dominia.org/djao/limitipconn.html),使用该模块后当同一个IP的连接到达限制的时候,Apache对客户端的Get请求发送"HTTP/1.1 503 Service Temporarily Unavailable"(该模块并不能阻止DDOS或类似的攻击)。使用如下命令安装mod_limitipconn(RPM包下载地址http://dominia.org/djao/limit/mod_limitipconn-0.23-1.el5.i386.rpm)。

  1. rpm -ivh mod_limitipconn-0.23-1.el5.i386.rpm 

在安装完成后,会在/etc/httpd/conf.d目录中建立一个名为limitipconn.conf的配置文件。在该文件中已将limitipconn.so模块装载,如图8-19所示。

 
图8-19  limitipconn.conf
【责任编辑:云霞 TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

Eclipse插件开发方法与实战

本书分为4个部分共24章,以插件开发为中心,围绕插件开发主要介绍SWT/JFace的应用、插件扩展点的实现,以及GEF、EMF和RCP的相关知识。本书...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊