Options设置服务器特性设置All所有的目录特性都有效,这是缺省状态None所有的目录特性都无效FollowSymLinks允许使用符号连接,这将使浏览器有可能访问文档根目录(DocumentRoot)之外的文档SymLinksIfOwnerMatch只有符号连接的目的与符号连接本身为同一用户所拥有时,才允许访问,这个设置将增加一些安全性ExecCGI允许这个目录下可以执行CGI程序Indexes允许浏览器可以生成这个目录下所有文件的索引,使得在这个目录下没有index.HTML(或其他索引文件)时,能向浏览器发送这个目录下的文件列表此外,上例中还使用了Order、Allow、Deny等参数,这是Limit语句中用来根据浏览器的域名和IP地址来控制访问的一种方式 。其中Order定义处理Allow和Deny的顺序,而Allow、Deny则针对名字或IP进行访问控制设置,上例使用allow from all,表示允许所有的客户机访问这个目录,而不进行任何限制 。
UserDir public_html
当在一台FreeBSD上运行Apache服务器时,这台计算机上的所有用户都可以有自己的网页路径,形如http://freebsd.example.org.cn/~user,使用波浪符号加上用户名就可以映射到用户自己的网页目录上 。映射目录为用户个人主目录下的一个子目录,其名字就用UseDir这个参数进行定义,缺省为public_html 。如果不想为正式的用户提供网页服务,使用DISABLED作UserDir的参数即可 。
##AllowOverride FileInfo AuthConfig Limit#Options MultiVIEws Indexes SymLinksIfOwnerMatch IncludesNoExec##Order allow,deny#Allow from all###Order deny,allow#Deny from all##这里可以看到Directory的另一个用法,即可以通过简单的模式匹配方法,针对分布在不同目录下的子目录定义访问控制权限 。这样设置就需要Apache服务器对每个路径进行额外的处理,因此就会降低服务器的性能,所以缺省情况并没有打开这种访问限制 。
这里可以看到另外一个语句Limit,Limit语句就是用来针对具体的请求方法来设定访问控制的,其中可以使用GET、POST等各种服务器支持的请求方法做Limit的参数,来设定对不同请求方法的访问限制 。一般可以打开对GET、POST、HEAD三种请求方法,而屏蔽其他的请求方法,以增加安全性 。Limit语句中,可以使用Order、Allow、Deny,Allow和Deny中可以使用匹配的方法针对域名和IP进行限制,只是对于域名是从后向前匹配,对于IP地址则从前向后匹配 。
DirectoryIndex index.html
很多情况下,URL中并没有指定文档的名字,而只是给出了一个目录名 。那么Apache服务器就自动返回这个目录下由DirectoryIndex定义的文件,当然可以指定多个文件名字,系统会这个目录下顺序搜索 。当所有由DirectoryIndex指定的文件都不存在时,Apache服务器可以根据系统设置,生成这个目录下的所有文件列表,提供用户选择 。此时该目录的访问控制选项中的Indexes选项(Options Indexes)必须打开,以使得服务器能够生成目录列表,否则Apache将拒绝访问 。
【85 FreeBSD连载:配置Apache服务器(2)】AccessFileName .htaccess
AccessFileName定义每个目录下的访问控制文件的文件名,缺省为.htaccess,可以通过更改这个文件,来改变不同目录的访问控制限制 。
Order allow,denyDeny from all除了可以针对目录进行访问控制之外,还可以根据文件来设置访问控制,这就是File语句的任务 。使用File语句,不管文件处于哪个目录,只要名字匹配,就必须接受相应的访问控制 。这个语句对于系统安全比较重要,例如上例将屏蔽所有的使用者不能访问.htaccess文件,这样就避免.htaccess中的关键安全信息不至于被客户获取 。
#CacheNegotiatedDocs
缺省情况下如果代理服务器和Apache服务器协商是否缓存其网页,Apache给予否定的回答,不希望自己的网页被代理服务器缓存 。然而这样就不能有效的利用代理服务器的优势,因此可以设置CacheNegotiatieDocs选项,使得代理服务器可以对网页进行缓存 。然而即使不设置这个选项,有的代理服务器(或通过调整设置)也能对网页进行缓存 。
推荐阅读
- FreeBSD 6.2下安装监测软件MUNIN手记
- BIND 9 FREEBSD 5.2上安装配置DNS SERVER
- FreeBSD 5.2.1R Web Server架设实例过程
- FreeBSD FTP 的架設
- FreeBSD swatch 命令介绍
- FreeBSD4.7+Qmail+Mysql+Vpopmail+QmailAdmin+Sq
- FreeBSD phpMyAdmin
- 小米mix2配置怎么样?小米mix2多少钱?
- FREEBSD下搭建支持JSP的WEBSERVER
- FreeBSD Portgrade软件更新