Apache配置文件httpd.conf参数注解

本文基于Apache-2.4.18版本配置文件httpd.conf进行说明。

ServerRoot “/usr/local/apache”
Apache的顶层目录,可以理解为安装目录.

Listen 80
监听的端口号.

LoadModule
启动时加载的模块.

User daemon
Group daemon
用户与用户组,启动时用root启动,然后切到此参数指定的用户.

ServerAdmin you@example.com
你的邮件地址,服务器发生问题时可以给你发邮件.

ServerName localhost:80
服务器名称,通常可以自动获取,如果没有一个注册的DNS名称,就输入IP地址。编译安装apache后,启动时可能会有提示,需要设置一下这个选项.

DocumentRoot “/usr/local/apache/htdocs”
存放web文件的目录,URL的请求会自动转到该目录下的对应文件;

DirectoryIndex index.html
指定主页文件的名称,用户通过URL请求时,并没有指定具体的文件,则会搜索此参数指定的文件名称作为默认请求的主页。

ErrorLog “logs/error_log”
错误日志文件,这通常是一个相对路径,与ServerRoot参数共用.

LogLevel warn
日志级别,用来控制日志的数量,可设置的参数有debug, info, notice, warn, error, crit, alert, emerg.


Directory
对目录进行访问控制设置。

对根目录(ServerRoot所定义的apache的根目录)进行文档访问控制设置。
<Directory />
    AllowOverride none
    Require all denied
</Directory>

对指定的目录进行文档访问控制设置。
<Directory "/usr/local/apache/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

----------

AllowOverride
这是Directory中的一个指令,“.htaccess”文件允许的指令类型。只对Directory部份有效。

格式:
AllowOverride All|None|directive-type [directive-type]

当这个指令设置为None,并且“AllowOverrideList”设置为None,“.htaccess”文件将会被完全忽略。在这种情况下,服务器将不会尝试读取“.htaccess”文件。
当指令设置为All,“.htaccess”文件中所有的指令都是允许的。

directive-type可以是以下的指令选项:
AuthConfig:允许使用授权的指令;
FileInfo:允许使用指令控制文档类型;
Indexes:允许使用指令控制目录索引;
Limit:允许使用指令控制主机使用权(Allow, Deny and Order);
Options[=Option,...]:这个与上面介绍的Options选项相同。

----------

Require

格式:
Require all denied|granted

<Directory "/"> 默认是允许所有的访问的,意思就是一个URL可以映射任何Apache上的文件。
这显然是不安全的,所以Require参数就有了作用。
在根目录<Directory "/">中设置为denied,在允许客户端访问的目录中设置为granted,这样设置后,除了设置为granted的指定目录,其它目录都不可以通过URL访问,安全性有极大的提高。

----------

Options有以下选项:
None:没有额外的功能被启用;
All:除 MultiViews外的所有选项;
ExecCGI:允许使用mog_cgi执行CGI脚本;
FollowSymLinks:使用符号链接,默认设置,仅可用于<Directory>部份和.htaccess文件;
Includes:允许使用mod_include提供服务器端includes;
IncludesNOEXEC:允许服务器端includes,但是exec cmd与exec cgi是不可用的;
Indexes:如果一个URL请求映射到目录,但是目录中没有参数DirectoryIndex指定的主页文件,那样就会返回一个格式化的目录文件列表;
MultiViews:允许内容协商,服务器执行一个隐含的文件名模式匹配,输入index.html会显示,输入index也会显示;
SymLinksIfOwnerMatch:符号链接与目标文件或目录的所有者必须相同。

Files

<Files "cat.html">
    # Insert stuff that applies to cat.html here
</Files>
<Files ~ "\.(gif|jpe?g|png)$">
    #...
</Files>

对指定的或匹配的文件进行设置。


IfModule
用于对指定的模块做出标记,指令仅处理匹配的模块,非匹配模块将会忽略。

<IfModule dir_module>
    DirectoryIndex index.html
</IfModule>

<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>

### 回答1: httpd.confApache Web服务器的主要配置文件,它包含了服务器的各种设置和选项,如监听端口、虚拟主机、目录别名、认证和授权等。通过修改httpd.conf文件,可以对Apache服务器进行各种配置和优化,以满足不同的需求和应用场景。在httpd.conf文件中,每个配置项都有相应的注释说明,方便用户理解和修改。 ### 回答2: Apache Web服务器是世界上最流行的Web服务器之一,它运行在UNIX和Windows操作系统上。Apache配置文件httpd.confApache Web服务器的主要配置文件,所有的配置选项都可以在该文件中定义或修改。 Apache Web服务器的httpd.conf配置文件中包含了许多配置选项,其中最重要的是ServerRoot、Listen、DocumentRoot和Directory。ServerRoot指定Apache Web服务器的根目录,在这个目录下可以包含所有的配置文件和其他资源文件。Listen选项指定Web服务器接受连接请求的IP地址和端口号,DocumentRoot选项指定Web服务器的主目录,所有的Web内容都将从这个目录下加载和访问。Directory选项指定Web服务器中的目录访问权限和授权选项。 除了以上这些选项外,httpd.conf还包括其他许多配置选项,比如ErrorDocument、AccessLog、KeepAlive、Timeout和MaxClients等。ErrorDocument选项用于指定错误页面的处理方式,AccessLog选项用于记录Web服务器的访问日志,KeepAlive选项用于指定长连接的保持时间,Timeout选项用于指定连接超时的时间,MaxClients选项用于指定Web服务器的最大并发连接数。 在使用Apache Web服务器时,我们需要根据实际情况来对httpd.conf进行配置。如果需要对Apache配置文件进行修改,则必须先备份原来的文件,以免修改错误造成Web服务器无法正常工作。在进行配置文件修改之后,需要对Web服务器进行重启才能使修改生效。需要注意的是,如果配置文件修改错误可能导致Apache Web服务器崩溃或出现安全漏洞,因此在修改之前需要充分了解各个配置选项的含义和使用方法。 ### 回答3: Apache配置文件httpd.confApache服务器的主要配置文件,它包含了Apache服务器的所有配置信息,包括监听端口、虚拟主机、日志记录、文件目录索引、认证和授权以及HTTP压缩等。这些信息的配置可以通过修改httpd.conf文件来实现。 httpd.conf文件分为多个部分,每个部分都有一些指令,指令由指令名称、参数和指令值组成。指令名称是指令的名称,参数是指令的一个或多个参数,指令值由空格分隔,是指定义的值或变量名。在httpd.conf文件中,可以使用注释#来标记注释行。 以下是几个常见的httpd.conf指令: 1. Listen:指定Apache服务器要监听的端口号。默认端口号为80,可以使用该指令更改。 2. ServerName:指定Apache服务器的主机名。该指令定义主机名是为了让服务器知道其自身的标识。 3. DocumentRoot:指定Web服务器的文档根目录。所有的页面及网站相关信息都从这个目录开始。 4. DirectoryIndex:指定访问目录时默认打开的文件名。如果目录中存在该文件,那么访问目录时就会打开该文件。 5. ErrorLog和AccessLog:分别用于定义Apache服务器的错误日志和访问日志。 6. Include:包含其他配置文件,这些配置文件包含了更多的指令信息。 除了上述常见指令之外,httpd.conf文件还可以设置虚拟主机、重定向、认证和授权、HTTP压缩等。在修改httpd.conf文件之前,建议备份原文件,以免修改出现错误导致服务器异常。修改后,需要重新启动服务器才能使配置生效。 总之,Apache配置文件httpd.confApache服务器的关键配置文件,其包含了所有的配置信息,能够通过修改该文件来实现对服务器的各种设置和调整。对于建立和维护Web服务器的管理员来说,熟悉和掌握httpd.conf文件的内容是非常重要的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值