Linux学习笔记(6)

apache服务器

安装:

可以从官方下安装包,不过一般的Linux发行版本都会带,除了一些叫Desktop的版本(就比如Red Flag Desktop)。现在一般都是apache2.x。

根据版本的不一样,一些命令可能有差别,Red Hat一直是用httpd守护进程来执行的一些命令和管理,但是Ubuntu就是直接用apache相关的命令来管理,可能根据各自的使用范围有些差别吧,但是核心的东西还是一样的。我用的是Ubuntu,大致debian也应该如此吧。

基本配置:

基本配置文件的位置和名称也随着发行版本的不同而不同,Red Hat用的是httpd.conf,Ubuntu的是apache2.conf,虽然也有httpd.conf,但是作用是不一样的。如果你是自己编译源代码,可以设置它的名字和位置为你自己的东西。在Ubuntu中它的位置在/etc/apache2/目录下。

由于好多书介绍的服务器配置针对的是低版本的服务器,这里尝试对apache2的conf文件的格式和内容进行一下解释:
格式:一行一个指令,指令不区分大小写,指令参数要区分大小写,"#"开头行表示注释,被忽略。
内容:
ServerRoot "/etc/apache2"
apache2配置文件所在目录,主要是寻找站点的设定和模块的链接。
LockFile /var/lock/apache2/accept.lock
系统初始化时控制脚本使用LockFile来协调启动和关闭进程。
PidFile /var/run/apache2.pid
服务器启动时候保存进程序列号,以便于管理。
Timeout 300
在终止某个功能之前,用这个变量来设置时间,单位为秒,也是为了便于管理。
KeepAlive On , MaxKeepAliveRequests 100 , KeepAliveTimeout 15
是否允许每个连接提出多于一个的请求,最多允许多少个请求,服务器对请求的等待时间
<IfModule *.c>
………………
</IfModule>
用于特定模块的指令,当加载时候才会生效,仅在启动中起作用。其中有几个比较重要的:
MinSpareServers 5 , MaxSpareServers 10
系统用来处理瞬时负载的后备服务器监控程序的最小(大)数目。
StartServers 5
控制脚本运行时,默认启动的监控程序的数目。
MaxClients 20
最多客户端连接数。
MaxRequestsPerChild 0
最大请求数,超过这个次数就停止服务器,0为不限制。
User www-data
Group www-data
执行服务器的用户名和所属组
LogFormat "%{User-agent}i" agent
服务器日志格式
ErrorLog /var/log/apache2/error.log
全局错误日志位置
Include /etc/apache2/mods-enabled/*.load
Include /etc/apache2/mods-enabled/*.conf
包含模块的设置
Include /etc/apache2/httpd.conf
包含用户的配置
Include /etc/apache2/ports.conf
包含监听的端口,在低版本的服务器上是用Listen命令直接加到这里的。
Alias /icons/ "/usr/share/apache2/icons/"
别名,或者叫做映射,在URL路径中加上前面的/icons/,服务器默认指向后面的目录。
<Directory "/usr/share/apache2/icons">
…………
</Directory>
此类模块中的指令和配置只作用于后面指定的目录中,若是<Files "">则是指文件。
ErrorDocument 400 /error/HTTP_BAD_REQUEST.html.var
指定的服务器错误页面指向,一般只用默认即可。
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml
默认主页文件名,如果目录下存在其中的一种,就直接将它返回,比较经常修改的一个属性。
AccessFileName .htaccess
辅助访问文件名,将此文件放到某一个目录下,可以定义此目录的访问设置。
UseCanonicalName Off
TypesConfig /etc/mime.types
HostnameLookups Off
IndexOptions FancyIndexing VersionSort
这几个不是很懂。
AddIcon , AddEncoding , AddLanguage, AddCharset, AddType
顾名思义,没什么意思,默认即可。
AddHandler cgi-script .cgi .pl
以cgi或者pl为后缀的文件当作cgi-script,返回cgi处理后的数据。在这里设置以后对全局生效,一般情况下出于安全性考虑会被注释掉。
BrowserMatch "Mozilla/2" nokeepalive
对于访问类型使用不同的方法对待连接。
Include /etc/apache2/sites-enabled/[^.#]*
包含站点的设定文件,即是虚拟目录设定所在目录,在apache中,站点属性和虚拟目录的设定是在另外的目录中进行的。

也是刚开始学习,有些地方说不太清楚,以后会有更详尽的解释。
Copyright ?? 2005-2006 Solrex Yang. All rights reserved.

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注