MySQL论坛

 找回密码
 注册
搜索
热搜: 活动 交友 discuz
查看: 13778|回复: 3

全面解析Apache2.x配置--全局变量[已完成]

    [复制链接]

该用户从未签到

发表于 2006-3-29 08:47:44 | 显示全部楼层 |阅读模式
#  此文的撰写将针对实际操作,并非普通的教程
#
#  此文档将指导你必须去设置的选项,从而使你的Web服务器正常的运转。
#  针对其他扩展的功能,如虚拟主机的设置,将会有专门的文档提供。
#
#  撰写者:Colin
#
#  colin寄语:此文档将只面对孵化池内部人员,并希望大家能够根据此文快速而透彻的掌握Apache
#
#  文档开始时间:2006年3月29日
#

一.  ServerRoot的设定

ServerRoot "/usr/loacl/apache2"

#  此路经的来由:在安装Apache时所指定的路径:

./configure --prefix=/usr/local/apache2

ServerRoot设置了服务器所在的目录。

#  一般来说它将包含conf(配置)和logs(日志)目录。

#  其它配置文件的相对路径即基于此目录 (比如Include或LoadModule)。

#  举例:

LoadModule foo_module modules/mod_foo.so


#  其中的modules/.....即为针对/usr/local/apache2的相对路径

二.  Apache运行用户  

User daemon
Group daemon


#
#  Apache2.x默认用户为daemon,如没有特殊的需要请勿修改(针对安全)
#  其他版本默认用户参考:nobody,apache
#

三.  DocumentRoot:文档根目录设定  

#  参考:

  1. DocumentRoot "/home/www/mysqlcn"
复制代码


#  当我们访问WEB服务器时,所访问的内容即为此文件夹下内容

四.  DirectoryIndex的运用  

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


#
#  配置细则:
#
#  Apache服务器就自动返回这个目录下由DirectoryIndex定义的文件,当然可以指定多个文件名字,系统会这个目录下顺序搜索。
#
#  当所有由DirectoryIndex指定的文件都不存在时,Apache服务器可以根据系统设置,生成这个目录下的所有文件列表,提供用户选择。
#
#  此时该目录的访问控制选项中的Indexes选项(Options Indexes )必须打开
#
#  以使得服务器能够生成目录列表,否则Apache将拒绝访问。
#

五.  目录权限的控制  

#
#  既然我们可以通过互联网访问我们的目录,为了安全我们当然要对其进行设置。
#
#  Apache可以设置每个目录的配置存取权限(包括它的子目录)。
#
#  首先,我们配置一个高限制的特征。  
#
#  这将禁止访问文件系统所在的目录,并添加你希望允许访问的目录块。  
#
#  如下所示  
<Directory />;  
Order Deny,Allow  
Deny from all  
</Directory>;

#  
#  注意你一定要明确地知道你要实现哪些功能。  
#  并且如何去控制

#  这将改变到你设置的DocumentRoot
#   

Options FollowSymLinks


#
#  Options:这个指令的值可以是“None”,“All”,或者下列选项的任意组合:  
#  Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews  
#   
#  Options设置 服务器特性详细设置
#
#  All 所有的目录特性都有效,这是缺省状态
#
#  None 所有的目录特性都无效
#
#  FollowSymLinks 允许使用符号连接,这将使浏览器有可能访问文档根目录 (DocumentRoot)之外的文档
#
#  SymLinksIfOwnerMatch 只有符号连接的目的与符号连接本身为同一用户所拥有时,才允许访问,这个设置将增加一些安全性
#
#  ExecCGI 允许这个目录下可以执行CGI程序 Indexes 允许浏览器可以生成这个目录下所有文件的索引,使得在这个目录下没有index.html(或其他索引文件)时,能向浏览器发送这个目录下的文件列表
#
#  注意,“MultiViews”必须被显式的指定,“Options All”不能为你提供这个特性。
#

AllowOverride None


#  
#  AllowOverride控制那些被放置在.htaccess文件中的指令。  
#  它可以是“All”,“None”,或者下列指令的组合:  
#  Options FileInfo AuthConfig Limit  
#
#  AllowOverride的详细设置(对每个目录访问控制文件作用的影响)
#
#  All 缺省值,使访问控制文件可以覆盖系统配置
#
#  None 服务器忽略访问控制文件的设置
#
#  Options 允许访问控制文件中可以使用Options参数定义目录的选项
#
#  FileInfo 允许访问控制文件中可以使用AddType等参数设置

建议使用AllowOverride None的原因:

  由于Apache对一个目录的访问控制设置是能够被下一级目录继承的,因此对根目录的设置将影响到它的下级目录。注意由于AllowOverride None的设置,使得Apache服务器不需要查看根目录下的访问控制文件,也不需要查看以下各级目录下的访问控制文件,直至httpd.conf(或access.conf )中为某个目录指定了允许Alloworride,即允许查看访问控制文件。由于Apache对目录访问控制是采用的继承方式,如果从根目录就允许查看访问控制文件,那么Apache就必须一级一级的查看访问控制文件,对系统性能会造成影响。而缺省关闭了根目录的这个特性,就使得Apache从httpd.conf中具体指定的目录向下搜寻,减少了搜寻的级数,增加了系统性能。因此对于系统根目录设置AllowOverride None不但对于系统安全有帮助,也有益于系统性能。


#
#  控制访问的设置:
#

Order allow,deny


#  如上所示:Order、Allow、Deny等参数,这是Limit语句中用来根据浏览器的域名和 IP地址来控制访问的一种方式。其中Order定义处理Allow和Deny的顺序,而Allow、Deny则针对名字或IP进行访问控制设置。

Allow from all


#  使用allowfrom all,表示允许所有的客户机访问这个目录,而不进行任何限制。

   完整的参考:

  1. <Directory "/home/www/mysqlcn">
  2. Options FollowSymLinks
  3. AllowOverride None
  4. Order allow,deny  
  5. Allow from all  
  6. </Directory>
复制代码


#  
#其他技术指导如:优化,负载,将会分类整理成专门的文档。

该用户从未签到

发表于 2012-9-1 11:42:52 | 显示全部楼层

Pizza Hut BOOK IT! Reading Incentive Programs

,giubbotti peuterey



->




->

->
lemonade:
made one ad
joined one lemon load
and one mother

-From Lemonade: and Other Poems
Squeezed from a Single Word
along Bob Raczka
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2012-12-18 15:20:24 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2013-8-9 10:25:19 | 显示全部楼层
谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|中文MySQL ( 京ICP 备06008873号 )

GMT+8, 2017-1-18 22:27 , Processed in 0.078747 second(s), 22 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表