天天看点

[学习笔记7]Apache及配置文件httpd.conf

1,其实:服务器平台而已。

2,Apache目录下的文件夹

(1)bin  -放apache运行的各个软件,里有 ad.exe服务器调试工具

(2)conf  - 放配置文件,里有 httpd.conf(是apache工作的核心)

(3)htdocs  - 默认的web网站主目录,也可在httpd.conf中修改网站根目录路径

3,httpd.conf

常用、较重要的:

(1)ServerRoot "D:/xampp/apache"     # 指定守护进程httpd的运行目录,一般不动。

(2)Listen 80      # 监听端口。可监视:标准的80端口 + 其他端口。 设置虚拟主机时,也可用到。

(3) ServerName localhost:80     # 缺省情况,不需要指定。也可指定Ip。

若没有定义虚拟主机,则服务器就用自己的正式名字,ServerName所定义的,就是这个正式的名字。

若ServerName设置不正确,则服务器不能正常启动。

(4) DocumentRoot "D:/xampp/apache/htdocs"       # 定义站点目录

客户端请求的url被映射到该目录下的网页文件。

该目录下的子目录和文件,若 url上使用同样的相对目录名,都可以被访问到。

在目录控制中的FollowSymLinks选项,来打开or关闭支持符号连接的特性。

(5)浏览器 对网站目录的访问控制,两种方式:

第一,在httpd.conf中,对每个目录进行设置。每次改动后,重启httpd守护进程,不灵活。

    <Directory "D:/xampp/apache/htdocs">

Options Indexes FollowSymLinks Includes ExecCGI   # options定义该目录的特性

AllowOverride All    # 允许该目录下的访问控制文件,来改变这里的配置。None表不允许,访问控制是继承方式,默认是None,关闭该属性,利于安全、性能。

Order allow,deny

Allow from all

    </Directory>

其中:

Indexes 允许浏览器生成该目录下所有文件的索引。

FollowSymLinks 允许符号连接选项                          

All 所有目录特性都有效。

None 所有目录特性都无效。

第二,在每个目录下,设置访问控制文件,.htaccess。较灵活。

(6)ErrorLog  错误日志。在apache配置过程中的排查错误阶段,很管用。

(7)其他

<IfDefine> 指令:封装一组指令,只有在启动时,当测试结果为true时,才生效。

<IfModule> 指令:封装一组指令,根据指定的模块是否启用 而决定是否进行处理。

MaxKeepAliveRequests 100  最大在线人数

关于httpd.conf详解,可参考,很全面: http://www.php100.com/html/webkaifa/apache/2009/0418/1192.html

4,新建网站目录,貌似要:[尚未试过,先贴个参考思路]

在httpd.conf中,

(1)配置虚拟主机

<VirtualHost 127.0.0.2:80>

    DocumentRoot d:/AppServ/www2

    ServerName 127.0.0.2:80

<VirtualHost>

(2)配置相应目录的属性

<Directory "d:/AppServ/www2">

    Options Indexes FollowSymLinks Multiviews

    AllowOverride All

    Order Allow,Deny

    Allow from all

</Directory>

(3)重启

5,其他

(1)httpd.conf配置正确 + apache服务打开。

(2)配置文件httpd.conf是否正确。若出错,可查看errorlog

(3)须开启Apache服务器,要映射到本地服务器。

(4)win7下,stop服务,需要用“管理员权限”运行apache,才可以。