注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

淘尽网 官方博客

淘尽网http://www.tao3w.com做最好的比价网站

 
 
 

日志

 
 
关于我

淘尽网 http://www.tao3w.com 做最好的比价网站,做最好的数据抓取专家。

网易考拉推荐

理解Apache的基本配置,详解httpd.conf(转)  

2017-02-16 16:20:38|  分类: LINUX |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件。

在这里简单介绍Apache的httpd.conf配置文件,虽然httpd.conf文件有1000多行,但不是所有的参数都需要设定。

这里介绍基本的几个参数,希望对刚接触Apache的朋友有所帮助。

Global Environment

Global Environment是影响Apache整体运行的Section。

ServerRoot

ServerRoot是指定安装Apache的路径,这个目录下面有conf、conf.d、logs等子目录。 许多Directive都是针对ServerRoot的相对路径,一般情况下设定为默认值。

ServerRoot "/etc/httpd/"

PidFile

指定写入httpd进程ID的文件名。

PidFile run/httpd.pid

Timeout

Timeout是Apache接收客户端的请求以后,在一定时间没有响应(向客户端做出回应)时,被判定为超时的时间(单位:秒)。 默认的Timeout值为60秒,在很多情况下都是可做出响应的时间,所以没有特别的需求,无需改变默认值。

当Apache的响应时间超过Timeout时,浏览器会报错。顺便讲一下,Apache1.2以前版本的默认Timeout值是1200秒。

Timeout 60

KeepAlive

KeepAlive是Apach对客户端(一般来讲应该是浏览器)的请求作出响应以后,不会立即关闭HTTP Session,而是维持一定时间。 因为,一般来讲客户访问网页以后,通过该页面的链接访问其他的页面。当然,使用KeeaAlive是对性能的提高有一定的帮助的。

KeepAlive Off

KeepAliveTimeout

KeepAliveTimeout是指定维持HTTP Session的时间(单位:秒)。Apache接收客户端的请求以后起,15秒内没有接收到其他请求的话, 切断和Session。

KeepAliveTimeout 15

prefork MPM

项目 默认值 解释
StartServers 8 启动Apache时,启动的子进程数
MinSpareServers 5 没有处理客户端请求(Idle)的httpd进程的最小数,即空闲的最小进程数
MaxSpareServers 20 没有处理客户端请求(Idle)的httpd进程的最大数,即空闲的最大进程数
ServerLimit 256 httpd的最大进程数。MaxClients不能大于ServerLimit
MaxClients 256 httpd可响应的最大Session数。prefork模式时,即httpd进程数不能超过256
MaxRequestsPerChild 4000 httpd子进程处理的4000个请求后,重启进程。0表示不重启进程
<IfModule prefork.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit      256
MaxClients       256
MaxRequestsPerChild  4000
</IfModule>

Apache最多会启动MaxClients指定的httpd进程数。 MaxClients值,设定的过大时会出现资源枯竭(内存枯竭使用交换分区等),所以要慎重的设定。 一般的计算方式如下。

MaxClients = Apache可使用的内存量 ÷ 1个Apache进程使用的内存量

这个计算说起来简单,计算起来比较复杂一些,首先要知道OS使用的内存量和其他PP(如MySQL等)使用的内存量以后, 计算Apache可使用的内存量及测定1个Apache进程使用的内存量。

Apache可启动的最多进程数(MaxClients)是,不可以超过OS限制。详细内容参照ulimit命令。

Apache会调整空闲进程数在MinSpareServers?MaxSpareServers之间,当空闲进程被使用到一定程度时,会启动Apache子进程。为了减少Apache的空闲进程数,一般配置为MinSpareServers < MaxSpareServers。

MaxKeepAliveRequests

当KeepAlive设定为On时,Apache可接收的连接请求最大数。设定这个值的时候需要考虑,一个页面的文件数 + 预留(css文件,图片都包含在连接请求里面)。 一般情况下使用默认值,Apache的技术文档是推荐把MaxKeepAliveRequests值设定的高一些,设定为0,表示没有限制。

KeepAlive On
KeepAliveTimeout 15
MaxKeepAliveRequests 100

Listen

Listen是指定Apache监听的IP地址和端口的参数。可指定多个端口,或者指定IP地址和端口。 设定VirtualHost时,只能使用Listen参数里设定端口。

使用例1

Listen 80
Listen 8080

使用例2

Listen 192.168.50.2:80
Listen 111.54.128.54:8080 

Apache启动时,在httpd.conf配置文件里找不到Listen参数的设定时,启动会失败。

Server configuration

User/Group

指定运行Apache的用户名和组名,没有特殊的需求的话,使用默认值。

User apache
Group apache

ServerAdmin

ServerAdmin是Apache报错或者显示错误文件(ErrorDocument)时,显示的系统管理员的邮箱地址。

ServerAdmin Administrator@zabbix.cc

ServerName

ServerName是设定服务器使用的服务器名和端口,从Apache2开始默认设定是被注释的,因为通过BIND能取得服务器名时是无需设定的。 但是为了防止Apache启动时的问题,推荐设定ServerName。

ServerName zabbix.cc:80

UseCanonicalName

UseCanonicalName是决定Apache本身参照的URL的参数。当设定为On时,返回给客户端的是ServerName参数的值。 设定为Off时,返回给客户端的是,客户端请求时提交的服务器名(或者主机名)和端口。 除此以外可以指定可DNS,这是针对IP Base的VirtualHost,支持不添加Host Header的客户端。

UseCanonicalName可以配置为On,但是使用认证机制的时候,出现重复(2次)认证等问题,这方面还没有完全理解,希望大家参照Apache技术文档。

UseCanonicalName Off

DocumentRoot

DocumentRoot是存放HTML等文件的目录(其实在想,这是大家都知道的,需要在这里写吗)。 一般来讲只能访问DocumentRoot指定的目录下面,而不能访问指定目录以外的,但是通过使用SymbolicLink和alias 也可以访问指定以外的目录。

DocumentRoot "/home/www/zabbix.cc"

Directory

是对服务器的根目录进行设定的Directive。 一定要区别和下面讲的(文档根目录)。 默认设定时只允许SymLinks,没有特殊的需求以外不需要修改。

<Directory />
     Options FollowSymLinks
     AllowOverride None
</Directory>

下面的Directory设定时非常重要的,指定文档根目录,一般指定DocumentRoot指定的目录。

<Directory "/home/www/zabbix.cc">
     Options FollowSymLinks
     AllowOverride All
     Order allow,deny
     Allow from all
</Directory>

Options Multiviews有效时,用户输入的URL不完整时,服务器端也会返回最适当的结果。 例如,文档根目录下有index.php文件,而用户输入的是https://www.51daiwei.net/blog/index时,一般会返回错误页面,但是Multiviews有效时, 服务器端会自动搜索index.*文件最终结果是返回https://www.51daiwei.net/blog/index.php的结果。

http://www.51daiwei.net/blog/linux/580/
  评论这张
 
阅读(47)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017