Apache配置文件:conf/httpd.conf。(注意:表示路径时使用‘/’而不使用‘\’,注释使用‘#’)

1. ServerRoot:服务器根目录,也就是Apache的安装目录,其他的目录配置若是使用相对路径,都是相对于服务器根目录的。

配置示例:

ServerRoot  “D:/wamp/bin/Apache2.4.23”

2. Listen:服务器监听的端口,可以只配置端口,也可以同时指定IP地址和端口,还可以指定使用的协议。(可配置多个端口)

完整配置示例:

Listen 127.0.0.1:80 http

3. DocumentRoot:网站的根目录,也就是放置网站文件的地方。

配置示例:

DocumentRoot = “D:/wamp/www”

4. LoadModule:加载特定的DSO模块,这些已编译的DSO模块存放于Apache安装目录下的modules目录中。

配置示例:

LoadModule  actions_module  modules/mod_actions.so

5. User:设置实际提供服务的子进程的用户。

配置示例:

User  daemon

6. Group:设置提供服务的Apache子进程运行时的用户组。

配置示例:

Group  daemon

7. ServerAdmin:设置在所有返回给客户端的错误信息中包含的管理员的邮件地址。(也可以使用URL)

配置示例:

ServerAdmin  23423423@qq.com

8. ServerName:设置服务器用于识别自己的主机名和端口号。如果没有指定端口号,服务器会使用接受请求的那个端口。

配置示例:

ServerName  localhost:80

9. <Directory>:和</Directory>一起用于封装一组指令,使之仅对某个目录及其子目录生效。该指令不能被嵌套使用,也不能出现

在<Limit>或<LimitExcept>配置段中。

配置示例:

<Directory “D:/wamp/www”>

  Options  Indexes  FollowSymLinks  MultiViews  Includes  IncludesNOEXEC  ExecCGI

  AllowOverride  None

  Order  allow, deny

   allow  from  all

</Directory>

指令及其参数说明:

(1)Options:控制在特定目录中将使用哪些服务器特性。

Indexs:若访问目录下无index文件,则准许显示该目录下的文件列表以供选择。

FollowSymLinks:准许在目录中使用符号链接到其他目录。

MultiViews:准许内容协商的“多重视图”。如果客户端请求的路径可能对应多种类型的文件,服务器将根据客户端请求的具体情

况自动选择一个最匹配客户端要求的文件。例如只在地址栏输入index也可以访问到index.php页面。

Includes:准许SSI。

IncludesNOEXEC:准许SSI,但不可使用exec和include功能。

ExecCGI:准许在该目录下使用CGI。

All:表示除了MultiViews之外的所有特性。

None:表示不启用任何的服务器特性。

注意:如果一个目录被多次设置了options,则最特殊的一个会被完全接受。

(2)AllowOverrid:是否准许文件“.htaccess”中设定的权限覆盖“access.conf”文件中设定的权限。

All:准许覆盖。

None:不准许覆盖。

AuthConfig:允许使用与认证授权相关的指令。

FileInfo:允许使用控制文档类型的指令、控制文档元数据的指令、mod_rewrite中的指令、mod_actions中的Action指令。

Indexs:允许使用控制目录索引的指令。

Limit:允许使用控制主机访问的指令。

(3)Order:控制默认的访问状态和allow、deny指令生效的顺序。

allow:允许访问。

deny:拒绝访问。

这两个参数由最后一个出现的参数决定,如“Order allow,deny”默认拒绝了所有的意思(中间有且只有一个逗号),但最终的判断

结果还要总下面的allow、deny语句中各自所包含的范围(如果有的话),这两个语句后面都一定接着“from”,否则Apache

会无法启动。“Order allow,deny”表示先判断allow语句再判断deny语句。

注意:上面的Order和allow、deny语句是针对Apache2.2的配置,Apache2.4的客户端访问控制由Require语句来配置。

  区别示例:

  拒绝所有请求:

  2.2配置:

  Order  deny,allow

  deny  from all

  2.4配置:

  Require  all  denied

  允许所有请求:

  2.2配置:

  Order  allow,deny

  allow  from all

  2.4配置:

  Require  all  granted

  只允许某个特定IP的访问:

  2.2配置:

  Order  deny,allow

  deny  from  all

  allow  IP-address

  2.4配置

  Require  host  IP-addres

10. <Files>:提供基于文件名的访问控制。<Files>段将根据他们在配置文件中出现的顺序被处理:在<Directory>段和.htaccess文件被处理之后,但在<Location>段之前。<Files>能嵌

  入到<Directory>段中以限制它们作用的文件范围。也可用于.htaccess文件当中,以允许用户在文件层面上控制对文件的访问。

  配置示例:

  <Files ".ht*">

  Require all denied

  </Files>

11. <IfModule>:封装根据指定的模块是否启用而决定是否生效的指令。

配置示例:

<IfModule http2_module>

  ProtocolsHonorOrder On

   Protocols h2 h2c http/1.1

</IfModule>

12. DirectoryIndex:当客户端请求一个目录时寻找的资源列表。

配置示例:

DirectoryIndex index.php index.htm index.html

(服务器将返回最先找到的那一个)

13. ErrorLog:指定当服务器遇到错误时记录错误日志的文件。

(若不是一个以“/”开头的绝对路径,则是一个相对于ServerRoot的相对路径)

配置示例:

ErrorLog "logs/error.log"

14. LogLevel:用于调整记录在错误日志中的信息的详细程度。

错误信息详细程度按重要性降序排列如下:

emerg:紧急(系统无法使用)

alert:必须立即采取措施。

crit:致命情况。

error:错误情况。

warn:警告情况。

notice:一般重要情况。

info:普通信息。

debug:调试信息。

(当指定了某个级别时,所有级别高于它的信息也会被同时记录)

配置示例:

LogLevel  warn

15. LogFormat:定义访问日志的记录格式。

配置示例:

LogFormat  "%h %l %u %t \"%r\" %>s %b"  common

(其中common就是这种格式的标识符)

16. CustomLog:设定日志的文件名和格式。

配置示例:

CustomLog  "logs/access.log"  common

(使用标识符common定义的格式来记录logs/access.log这个日志文件)

17. TransferLog:指定日志文件的位置。

本指令除不允许直接定义日志格式或根据条件进行日志记录外,与CustomLog指令有完全相同的参数和功能。

18. Alias:映射URL到文件系统的特定区域。Alias指令使客户端可以访问到DocumentRoot以外的本地文件。

配置示例:

Alias /myphoto "E:/照片"

<Directory "E:/照片">

Options Indexes

Require all granted

</Directory>

目录/myphoto是相对于DocumentRoot的相对路径,甚至可以是一个不存在的目录,这时访问该目录就会映射到“E:/照片”目录中。

注意:一定要通过<Directory>段明确地对目标目录设定访问权限,否则会提示“forbidden”。

  Redirect:将一个路径重定向到另一个路径下。

  配置示例:

  Redirect  /haha  /chsfc

  (Redirect和Alias不同,配置中的两个路径都是在DocumentRoot目录下的)

  注意:要使用Alias和Redirect都应该先开启alias_module模块功能。

19. ScriptAlias:映射一个URL到文件系统并视之为CGI脚本目录。

配置示例:

ScriptAlias /cgi-bin/ "D:/wamp/bin/Apache2.4.23/cgi-bin"

20. DefaultType:当服务器无法确定一个文档的内容类型时发送的默认MIME内容类型。

配置示例:

DefaultType  text/plain   (纯文本,浏览器在内部打开)

DefaultType  application/octet-stream   (浏览器提示用户进行保存)

21. AddType:为特定后缀的文件指定MIME类型,这里的设置将覆盖mime.types中的设置。

配置示例:

AddType  application/x-httpd-php  .php .html .htm   (前导点可带可不带)

22. ErrorDocument:批示当遇到错误的时候服务器将给客户端什么样的应答。

语法:

ErrorDocument  error-code  document

其中error-code时服务器返回的错误代码,document是回应的数据,可以是简单的文本,

本地网页,本地CGI程序,或远程主机上的网页。

配置示例:

ErrorDocument  500  "The server made a boo boo."

ErrorDocument  402  http://www.example.com/subscription_info.html

23. EnableMMAP:指示httpd在递送中如果需要读取一个文件的内容,是否可以使用内存映射。

配置示例:

EnableMMAP  On

EnableMMAP  Off

(这种内存映射有时会带来性能的提高,有时却会出现问题)

24. EnableSendfile:控制httpd是否可以使用操作系统内核的sendfile支持来将文件发送到户端。

 配置示例:

EnableSendfile  Off

(这个sendfile机制避免了分开的读和写操作以及缓冲区分配,但是在一些平台或文件系统上会引发一些问题)

25. include:在服务器配置文件中包含其他配置文件。

配置示例:

include  conf/extra/httpd-autoindex.conf

在Apache安装目录下的conf/extra/目录中有一些补充配置文件,可以根据需要,通过配置将它们包含到主配置文件conf/httpd.conf文件中。

注意:写Apache配置时,千万不能出现拼写错误,不然服务器会一直重启失败!

Apache常用配置的更多相关文章

  1. Apache常用配置详解

    Apache配置文件:conf/httpd.conf.(注意:表示路径时使用‘/’而不使用‘\’,注释使用‘#’) 1. ServerRoot:服务器根目录,也就是Apache的安装目录,其他的目录配 ...

  2. apache 基本配置

    1.1 ServerRoot 配置 [ServerRoot "" 主要用于指定Apache的安装路径,此选项参数值在安装Apache时系统会自动把Apache的路径写入.Windo ...

  3. Apache入门 篇(二)之apache 2.2.x常用配置解析

    一.httpd 2.2.x目录结构 Cnetos 6.10 YUM安装httpd 2.2.x # yum install -y httpd 程序环境 主配置文件: /etc/httpd/conf/ht ...

  4. Apache服务器安装配置

    Apache服务器安装 1.Apache服务器安装      在Linux系统下,apache服务器的安装方式比较灵活,可以使用二进制包安装,比如:rpm包.deb包.已编译好的包.也可以简单的使用y ...

  5. struts2 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

    Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...

  6. Tomcat服务器常用配置和HTTP简介

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  7. apache性能配置优化

    最近在进行apache性能优化设置.在修改apache配置文件之前需要备份原有的配置文件夹conf,这是网站架设的好习惯.以下的apache配置调优均是在red had的环境下进行的. httpd相关 ...

  8. Apache的配置

    Apache的配置由httpd.conf文件配置,因此下面的配置指令都是在httpd.conf文件中修改. 主站点的配置(基本配置) (1) 基本配置: ServerRoot "/mnt/s ...

  9. Win7 64位 php+Apache+mysql 配置

    注明:此文转载至 http://www.cnblogs.com/isyouth/p/3778045.html 一 :准备阶段 1:php php下载链接:http://windows.php.net/ ...

随机推荐

  1. Android之View绘制流程开胃菜---setContentView(...)详细分析

    版权声明:本文出自汪磊的博客,转载请务必注明出处. 1 为什么要分析setContentView方法 作为安卓开发者相信大部分都有意或者无意看过如下图示:PhoneWindow,DecorView这些 ...

  2. Java-判断一个数是不是素数

    import java.util.Scanner; /** * @author 薛定谔的猫 * java判断一个数是不是素数 * * 素数又称质数,是指在一个大于1的自然数中,除了1和本身之外,不能被 ...

  3. pygame 精灵的行走及二段跳实现方法

    不得不承认<Python游戏编程入门>这本书翻译.排版非常之烂,但是里面的demo还是很好的,之前做了些改编放到这里. 先是素材: 背景 精灵 所有素材均取自此书 接下来就是精灵类的创建了 ...

  4. 详解go语言的array和slice 【二】

    上一篇已经讲解过,array和slice的一些基本用法,使用array和slice时需要注意的地方,特别是slice需要注意的地方比较多.上一篇的最后讲解到创建新的slice时使用第三个索引来限制sl ...

  5. 杂谈--DML触发器学习

    触发器按类型分为三类: 1. DML 触发器,在数据变更时触发: 2. DDL 触发器,在修改数据库级别或实例级别对象时触发: 3. Login 触发器,在用户登录时触发: 最常见的是DML触发器,D ...

  6. spring boot / cloud (十八) 使用docker快速搭建本地环境

    spring boot / cloud (十八) 使用docker快速搭建本地环境 在平时的开发中工作中,环境的搭建其实一直都是一个很麻烦的事情 特别是现在,系统越来越复杂,所需要连接的一些中间件也越 ...

  7. 云 MongoDB 优化让 LBS 服务性能提升十倍

    欢迎大家前往腾讯云技术社区,获取更多腾讯海量技术实践干货哦~ 随着国内服务共享化的热潮普及,共享单车,共享雨伞,共享充电宝等各种服务如雨后春笋,随之而来的LBS服务定位问题成为了后端服务的一个挑战.M ...

  8. SqlHelper工具类

    public class SqlHlper { public static readonly string constr = ConfigurationManager.ConnectionString ...

  9. 1042 数字0-9的数量 1050 循环数组最大子段和 1062 序列中最大的数 1067 Bash游戏 V2 1092 回文字符串

    1042 数字0-9的数量 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 给出一段区间a-b,统计这个区间内0-9出现的次数.   比如 10-19,1出现11次 ...

  10. 在Ubuntu终端彻底删除软件

    在Ubuntu终端彻底删除软件 1.删除软件 方法一.如果你知道要删除软件的具体名称,可以使用 sudo apt-get remove --purge 软件名称 sudo apt-get autore ...