基本指令
一、一般的配置命令
1、AccessFileName
默认值:AccessFileName .htaccess
此命令是针对目录的访问控制文件的名称;
2、BindAddress
默认值:BindAddress *
设置
服务器监听的IP地址;
3、DefaultType
默认值:DefaultType text/html
服务器不知道文件类型时
,用缺省值通知客户端;
4、DocumentRoot
默认值:DocumentRoot “/var/www/html/”
设置Apache提供文件服务的目录;
5、ErrorDocument
设置当有问题发生时
,Apache所做的反应;
6、
使用不包含在Apache安装中的模块的命令
7、Include
包含其它的配置文件
8、Listen
默认值:所有能够连接到服务器的IP地址
指定如何响应除去Port指定的端口地址外的地址请求;
9、Options
控制某个特定目录所能使用的服务器功能;
其值有:
None:表示只能浏览,
FollowSymLinks:允许页面连接到别处,
ExecCGI:允许执行CGI,
MultiViews:允许看动画或是听音乐之类的操作,
Indexes:允许服务器返回目录的格式化列表,
Includes:允许使用SSI
。这些设置可以复选
。
All:则可以做任何事,但不包括MultiViews。
AllowOverride:加None参数表示任何人都可以浏览该目录下的文件。
另外的参数有:FileInfo、AuthConfig、Limit。
10、Port
默认值:Port 80
设置服务器监听的网络端口;
11、ServerAdmin
设定管理员的电子邮件地址;
12、ServerName
设定服务器的主机名称;
13、ServerRoot
默认值:ServerRoot /etc/httpd/
设定服务器的根目录;
14、User && Group
指定服务器用来回答请求的用户ID和组ID;
二、性能和资源配置命令
1、进程控制
1)MaxClients
默认值:MaxClients 150
设定能同时服务的请求数目;
2)MaxRequestsPerChild
默认值:MaxRequestsPerChild 0
设置每个进程能够响应的最大请求数,0表示不限制;
3)MaxSpareServers
默认值:MaxSpareServers 10
设定最大空闲服务进程数目;MinSpareServers设定最小空闲服务进程数目;
4)ServerType
默认值:ServerType standalone
设定系统执行服务器的方式;
5)StartServer
默认值:StartServer 5
服务器启动时建立的子进程的数目;
6)ThreadsPerChild
默认值:ThreadsPerChild 50
设定Apache服务器使用的线程数;
7)Timeout
默认值:Timeout 300
设定处理一个请求的超时值;
2、建立持续连接
1)KeepAlive
默认值:KeepAlive ON
设定在Apache中打开或者关闭TCP连接
2)KeepAliveTimeout
默认值: KeepAliveTimeout 5
设定在Apache关闭TCP连接等待的时间;
3)MaxKeepAliveRequests
默认值:MaxKeepAliveRequests 100
设定持续连接时每个连接的最大请求数;
3、控制系统资源
1)RLimitCPU
控制Apache进程占用CPU的时间;
2)RLimitMEM
控制Apache进程的内存占用量;
3)RLimitNPROC
设定每个用户并发进程的最大数目;
4、动态装载模块
1)AddModule
装入当前服务器不使用的预编译模块;
2)ClearModuleList
清除预编译模块列表;
三、标准容器命令
1、<Directory>
<Directory>和</Directory>容器指令,应用到指定的目录及其子目录上;
2、<DirectoryMatch>
<DirectoryMatch>和</DirectoryMatch>除了使用规则表达式作为参数和不需要通配符~之外,和
<Directory>类似;
3、<File>
<File>和<File>容器用来设置通过文件名访问;
4、<FilesMatch>
和<File>类似,但不能使用通配符~;
5、<Location>
<Location>和</Location>容器命令用来提供通过URL的访问控制。
6、<LocationMatch>
<LocationMatch>和<Location>相同,只是不能使用通配符~。
四、虚拟主机命令
1、<VirtualHost>
定义特定的虚拟主机。
2、NameVirtualHost
如果使基于名称的虚拟主机,则要使用此命令。
3、ServerAlias
针对含有多个IP名称的基于名称的虚拟主机。可以使用单独的虚拟主机命令定义所有的IP名称。
五、日志命令
1. ErrorLog
默认值:ErrorLog logs/error_log
设定错误日志文件。
2.LockFile
默认值:LockFile logs/accept.lock
用来设置锁文件的路径,确保只有Apache服务器才拥有此文件的读写权限。
3.PidFile
默认值:PidFile logs/httpd.pid
设定Apache服务器记录守护进程的进程ID的文件。
4.ScoreBoardFile
默认值:ScoreBoardFile logs/apache_status
设置存储内部进程数据文件的路径。
六、认证
安全命令
1.AllowOverride
默认值:AllowOverride All
当服务器找到AccessFileName指定的文件时,需要知道该文件中的那些指令可以覆盖在配置文件中稍早出现的指令。
AllowOverride可以设为None,此时不会读取该文件的内容,如果设为All,服务器将允许所有的指令。
2.AuthName
为某个要求认证的资源设定标号。
3.Authtype
为某个目录选择使用的认证类型。
4.HostNameLookups
默认值:HostNameLookups Off
设置Apache允许或者禁止为每个请求而进行DNS查找。
5、<Limit>
<Limit>和<Limit>包装起来的指令只应用到指定的任何有效的HTTP存取方式上。
6、require
这个指令选择经过验证可以存取目录的使用者。
7、Satisfy
如果已经建立了基本的HTTP认证配置,且同时使用了allow和require命令,则可用使用此命令来配置Apache在什么条件才能满足认证的要求。
标准模块
1.mod_access
提供以客户端的主机名称或者IP地址为基础的存取控制。
1)allow
典型应用是在容器中,用来允许符合条件的主机存取。
2)deny
典型应用是在容器中,用来禁止符合条件的主机存取。
3)order
用来控制allow指令和deny指令的次序。
2.mod_actions
能够提供基于MIME类型的CGI脚本或HTTP请求方法。
1)Action
对特定的MIME-type指定一个操作。
2)Script
此命令和Action相似,但不是将操作和MIME-type联系起来,而是将操作和HTTP的请求方法联系起来,如GET、PUT等。
3.mod_alias
1)Alias
该指令可以是文件存放在DocumentRoot之外的本地文件系统里。
2)Redirect
该指令将旧的URL重定向到新的URL。