Apache httpd.conf配置文件AllowOverride参数详解

AllowOverride从字面上解释是允许覆盖的意思,即Apache允许另一配置文件覆盖现有配置文件。

我们通常利用Apache的rewrite模块对URL进行重写,rewrite规则会写在 .htaccess 文件里。但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置。

从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override,即:

< Directory />
AllowOverride None
< /Directory>

在 AllowOverride 设置为 None 时, .htaccess 文件将被完全忽略。当此指令设置为 All 时,所有具有 “.htaccess” 作用域的指令都允许出现在 .htaccess 文件中。

而对于 URL rewrite 来说,至少需要把目录设置为:

< Directory /myblogroot/>
AllowOverride FileInfo
< /Directory>

以下是AllowOverride的详细参数:

AuthConfig

允许使用与认证授权相关的指令(AuthDBMGroupFile, AuthDBMUserFile, AuthGroupFile, AuthName, AuthType, AuthUserFile, Require, 等)。

FileInfo

允许使用控制文档类型的指令(DefaultType, ErrorDocument, ForceType, LanguagePriority, SetHandler, SetInputFilter, SetOutputFilter, mod_mime中的 Add* 和 Remove* 指令等等)、控制文档元数据的指令(Header, RequestHeader, SetEnvIf, SetEnvIfNoCase, BrowserMatch, CookieExpires, CookieDomain, CookieStyle, CookieTracking, CookieName)、mod_rewrite中的指令(RewriteEngine, RewriteOptions, RewriteBase, RewriteCond, RewriteRule)和mod_actions中的Action指令。

Indexes

允许使用控制目录索引的指令(AddDescription, AddIcon, AddIconByEncoding, AddIconByType, DefaultIcon, DirectoryIndex, FancyIndexing, HeaderName, IndexIgnore, IndexOptions, ReadmeName, 等)。

Limit

允许使用控制主机访问的指令(Allow, Deny, Order)。

Options[=Option,…]

允许使用控制指定目录功能的指令(Options和XBitHack)。可以在等号后面附加一个逗号分隔的(无空格的)Options选项列表,用来控制允许Options指令使用哪些选项。

时间: 2024-10-12 12:15:45

Apache httpd.conf配置文件AllowOverride参数详解的相关文章

Samba配置文件常用参数详解

Samba配置文件常用参数详解 Samba的主配置文件叫smb.conf,默认在/etc/samba/目录下. smb.conf含有多个段,每个段由段名开始,直到下个段名.每个段名放在方括号中间.每段的参数的格式是:名称=指.配置文件中一行一个段名和参数,段名和参数名不分大小写. 除了[global]段外,所有的段都可以看作是一个共享资源.段名是该共享资源的名字,段里的参数是该共享资源的属性. Samba安装好后,使用testparm命令可以测试smb.conf配置是否正确.使用testparm

Nginx核心配置文件常用参数详解

Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/en/docs/http/ngx_http_core_module.html.本篇博客只列出来了常用的参数介绍,用这些参数说明来定制化我们自己的nginx的web服务器等等. 一.正常运行的必备配置 1>.user username [groupname]; #以那个用户身份运行,以在configu

Centos 6 apache httpd 2.2 主要配置详解( 一 )

实验环境:VMware Workstation Pro 14(试用版) 系统平台: CentOS release 6.9 (Final) 内核 2.6.32-696.el6.x86_64 Server version: Apache/2.2.15 (Unix) 模块文件路径: /etc/httpd/modules /usr/lib64/httpd/modules 主程序文件: /usr/sbin/httpd /usr/sbin/httpd.work /usr/sbin/httpd.even 主进

httpd-2.2配置文件常用参数详解

ServerRoot "/etc/httpd" 配置httpd进程的根目录(运行目录) PidFile run/httpd.pid 定义httpd的pid文件 Timeout 60 定义客户程序和服务器连接的超时间隔,超过这个时间间隔(秒)后服务器将断开与客户机的连接. KeepAlive Off 定义是否启用保持连接,默认关闭状态.由于http是无状态协议,一次请求(建立一次TCP连接)只能获取一个资源,当页面中包含多个资源的时候,就需要多次请求(建立多次TCP连接),这样导致服务器

Apache httpd.conf 配置文件语法验证

Apache 的 httpd.conf文件改动之后,必须重新启动server才干生效. 有时server在提供服务的时候,直接更改配置,重新启动服务.会带来非常大的危急性. 假设能在改动配置之后,先验证语法正确与否,再重新启动server.则能避免一些不必要的错误. 对以上需求,Apache本身提供了对应的命令来验证配置文件的语法. Windows环境的命令: httpd -t Linux环境的命令: [[email protected] bin]# ./apachectl configtest

Centos 6 apache httpd 2.4 主要配置详解

实验环境:VMware Workstation Pro 14(试用版) 系统平台: CentOS release 6.9 (Final) 内核 2.6.32-696.el6.x86_64 Server version: Apache/2.4.29 (Unix) 新特性 ? MPM支持运行为DSO机制:以模块形式按需加载 ? event MPM生产环境可用 ? 异步读写机制 ? 支持每模块及每目录的单独日志级别定义 ? 每请求相关的专用配置 ? 增强版的表达式分析式 ? 毫秒级持久连接时长定义 ?

Apache之AllowOverride参数详解

通常利用Apache的rewrite模块对 URL 进行重写的时候, rewrite规则会写在 .htaccess 文件里.但要使 apache 能够正常的读取.htaccess 文件的内容,就必须对.htaccess 所在目录进行配置.从安全性考虑,根目录的AllowOverride属性一般都配置成不允许任何Override ,即< Directory />AllowOverride None< /Directory> 在 AllowOverride 设置为 None 时, .h

Samba配置文件常用参数详解-OK

Samba的主配置文件叫smb.conf,默认在/etc/samba/目录下. smb.conf含有多个段,每个段由段名开始,直到下个段名.每个段名放在方括号中间.每段的参数的格式是:名称=指.配置文件中一行一个段名和参数,段名和参数名不分大小写. 除了[global]段外,所有的段都可以看作是一个共享资源.段名是该共享资源的名字,段里的参数是该共享资源的属性. Samba安装好后,使用testparm命令可以测试smb.conf配置是否正确.使用testparm –v命令可以详细的列出smb.

apache url rewrite 的RewriteRule参数详解

我们经常会在apache那边对一些url进行一些重写操作,那么就会涉及到很多的重写策略的选择,比如重定向的方式,参数的处理,规则匹配的顺序等. 比如我们某个应用会有下面的url rewrite规则:下面是对于域名imall.test.com访问的时候需要重定向到http://page.test.com/channel/imall/index.html这个url上, <VirtualHost *> ServerName imall.test.com#if("${industry_por