php开源嘛
首页 | English | MySql数据库 | Php编程 | 建站杂烩 | 系统服务器 | 资源共享 | 专题 | 才桀网 | 支持论坛
  当前位置:主页>系统服务器>文章内容
Linux系统下Apache服务器设置与优化
来源:网络 作者:本站整理 发布时间:2007-08-21  

每个目录具备一定属性,可以使用Options来控制这个目录下的一些访问特性设置,以下为常用的特性选项:

Options设置 服务器特性设置。

 All 所有的目录特性都有效,这是缺省状态。

 None 所有的目录特性都无效。  

FollowSymLinks 允许使用符号连接,这将使浏览器有可能访问文档根目录 (DocumentRoot)之外的文档 SymLinksIfOwnerMatch 只有符号连接的目的与符号连接本身为同一用户所拥有时,才允许访问,这个设置将增加一些安全性。 

 ExecCGI 允许这个目录下可以执行CGI程序 Indexes 允许浏览器可以生成这个目录下所有文件的索引,使得在这个目录下没有index.html(或其他索引文件)时,能向浏览器发送这个目录下的文件列表

 此外,上例中还使用了Order、Allow、Deny等参数,这是Limit语句中用来根据浏览器的域名和 IP地址来控制访问的一种方式。其中Order定义处理Allow和Deny的顺序,而Allow、Deny则针对名字或IP进行访问控制设置,上例使用 allowfrom all,表示允许所有的客户机访问这个目录,而不进行任何限制。

UserDir public_html

 当在一台Linux上运行Apache服务器时,这台计算机上的所有用户都可以有自己的网页路径,形如 http://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将拒绝访问。

 AccessFileName .htaccess

 AccessFileName定义每个目录下的访问控制文件的文件名,缺省为.htaccess,可以通过更改这个文件,来改变不同目录的访问控制限制。

 Order allow,deny

 Deny from all

 除了可以针对目录进行访问控制之外,还可以根据文件来设置访问控制,这就是File语句的任务。使用File 语句,不管文件处于哪个目录,只要名字匹配,就必须接受相应的访问控制。这个语句对于系统安全比较重要,例如上例将屏蔽所有的使用者不能访问.htaccess文件,这样就避免.htaccess中的关键安全信息不至于被客户获取。

 #CacheNegotiatedDocs

 缺省情况下如果代理服务器和Apache服务器协商是否缓存其网页,Apache给予否定的回答,不希望自己的网页被代理服务器缓存。然而这样就不能有效的利用代理服务器的优势,因此可以设置CacheNegotiatieDocs 选项, 使得代理服务器可以对网页进行缓存。然而即使不设置这个选项,有的代理服务器(或通过调整设置)也能对网页进行缓存。

 UseCanonicalName On

 打开这个UseCanonicalName是Web服务器的标准做法,因为客户发送的大部分请求都是对本服务器的引用,这样服务器就能使用 ServerName和Port选项的设置内容构建完整的URL,并回应客户,使浏览器能得到规范的URL。如果将这个参数设置为Off,那么Apache将使用从客户请求中获得服务器的名字和端口值(支持HTTP 1.1的客户的请求中将会有这些信息),重新构建URL。

 TypesConfig /etc/mime.types

 TypeConfig用于设置保存有不同的MIME类型数据的文件名,在Linux下缺省设置为/usr/local/apache/etc/mime.types 或者/etc/mime.types。

 DefaultType text/plain

 如果Web服务器不能决定一个文档的缺省类型,这通常表示文档使用了非标准的后缀,那么服务器就使用 DefaultType定义的MIME类型将文档发送给客户浏览器。这里的设置为text/plain,这样设置的问题是,如果服务器不能判断出文档的 MIME,那么大部分情况下这个文档为一个二进制文档,但使用 text/plain格式发送回去,浏览器将在内部打开它而不会提示保存。因此建议将这个设置更改为application/octet-stream,这样浏览器将提示用户进行保存。
(阅读次数:

共11页: 上一页 [1] [2] [3] [4] [5] 6 [7] [8] [9] [10] [11] 下一页
上一篇:用PHP写MySQL数据库的用户认证系统   下一篇:大系统上PHP令人不爽的N大原因
[收藏] [推荐] [评论(0条)] [返回顶部] [打印本页] [关闭窗口]  
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
 §最新评论
  热点文章
·Linux配置web服务器全攻略
·win中整合配置PHP和MySQL经典教
·Apache日志分析工具--AWStats安
·Apache中httpd.conf文件配置详解
·Linux嵌入式开发环境的简单介绍
·Linux系统下PHP服务器安全配置技
·Apache+Tomcat负载平衡设置方法
·Linux网络基本网络配置方法介绍
·配置Apache服务器并且设置DNS
·Linux系统Apache用户授权和访问
·Apache伪静态html(URL Rewrite)
·Apache指南: .htaccess文件使用
  相关文章
·Apache指南: .htaccess文件使用
·Linux 系统下实现多线程客户/服
·增加Apache最大连接数的方法详细
·配置Apache的5个技巧
·Linux脚本开发数学库在PHP中的重
·Linux系统下PHP服务器安全配置技
·基于Linux操作系统的目录服务的
·Linux服务器与网络设备的维护之
·Apache伪静态html(URL Rewrite)
·Linux系统Apache用户授权和访问
·Linux系统上安装和配置网络设备
·怎样用IIS或Apache做PHP的服务器

关于我们 | 本站声明 | 友情连接 | 诚邀加盟 | 网站地图
版权Power by DedeCms   技术支持QQ =>> 罗江游鱼   Jacking  后台登陆
Copyright @ 2007 公司地址:柳州市东环路268号 邮编:545006 电话:15920389818 桂ICP备07006725号