apache的AllowOverride以及Options使用详解

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

AllowOverride参数就是指明Apache服务器是否去找.htacess文件作为配置文件,如果设置为none,那么服务器将忽略.htacess文件,如果设置为All,那么所有在.htaccess文件里有的指令都将被重写。对于AllowOverride,还可以对它指定如下一些能被重写的指令类型.

通常利用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>

2.在要支持url rewirte的目录启用 Options FollowSymLinks和AllowOverride All 代码如下:

Alias /php "c:/web/php/"   
<Directory "c:/web/php/">   
Options Indexes FollowSymLinks   
AllowOverride All   
Order allow,deny   
Allow from all   
</Directory>

这样通过http://localhost:8080/php/访问时,/php/和其下面的子目录将支持url rewrite

1 AuthConfig 允许使用所有的权限指令,他们包括AuthDBMGroupFile AuthDBMUserFile AuthGroupFile AuthName AuthTypeAuthUserFile和Require

2 FileInfo 允许使用文件控制类型的指令。它们包括AddEncoding AddLanguage AddType DEfaultType ErrorDocument LanguagePriority

3 Indexes 允许使用目录控制类型的指令。它们包括AddDescription AddIcon AddIconByEncoding AddIconByType DefaultIcon DirectoryIndex FancyIndexing HeaderName IndexIgnore IndexOptions ReadmeName

4 Limit 允许使用权限控制指令。它们包括Allow Deny和Order

5 Options 允许使用控制目录特征的指令.他们包括Options 和XBitHack

Options

1 All 准许以下除MultiViews以外所有功能

2 MultiViews 允许多重内容被浏览,如果你的目录下有一个叫做foo.txt的文件,那么你可以通过/foo来访问到它,这对于一个多语言内容的站点比较有用

3 Indexes 若该目录下无index文件,则准许显示该目录下的文件以供选择

4 IncludesNOEXEC 准许SSI,但不可使用#exec和#include功能

5 Includes 准许SSI

6 FollowSymLinks 在该目录中,服务器将跟踪符号链接。注意,即使服务器跟踪符号链接,它也不会改变用来匹配不同区域的路径名,如果在;标记内设置,该选项会被忽略

7 SymLinksIfOwnerMatch 在该目录中仅仅跟踪本站点内的链接

8 ExecCGI 在该目录下准许使用CGI

 

 

这篇文章如果帮到了你 打赏
分享到: 更多 (0)
0
如果文章内容或图片资源失效或者您对文章有异议,请留言反馈或点击右下角邮件图标发送邮件说明情况,我们会及时处理,谢谢!
  • 配置本地的虚拟主机的方法过程
    我新建了一个项目,名Hello,位于:I:\wamp\www目录下。 想访问这个项目,需要在地址栏上输入localhost/hello,但是我不想这样,我想要在地址栏输入local.hello.com就可以访问到我这个项目。具体步骤,如下:...
  • 百度云主机两种web服务器的伪静态配置
    如果不配置静态,会出现只能访问首页,其他页面都会404错误 Lighttpd 需要新建app.conf文件,粘贴以下代码,然后保存,放到网站根目录 handlers: - url : / script : /index.php script...
  • 城通网盘 (CTfile.com) 下载教程
    PortableSoft 分享的很多软件或文件都使用了城通网盘。 城通网盘是一个赚钱网盘,每下载一次我上传的文件,我有些微的提成,但它的页面广告较多,速度可能慢些,但胜在比较稳定,提供的容量也大,小文件永久存储,更关键是不容易删除文件,而百...
  • Linux宝塔面板免费版开启waf防火墙的方法教程
    宝塔面板在 6.x 之前的版本中自带了 Nginx 防火墙功能(Nginx管理 > 过滤器 如下图),到了 6.x 之后,,,为了推行收费版的防火墙插件,宝塔官方把这个免费的防火墙入口给隐藏了。今天,就来说说如何开启这个隐藏的 Ngi...
  • 阿里云ECS无法正常使用SMTP发信的解决方法
    最近购置了一台阿里云ECS云服务器,但是在测试的过程中发现之前给网站配置的SMTP发信失效了,这是怎么回事?回忆了下自己并没有对发信配置进行操作,后来发现是阿里云自己的锅。 出于安全考虑,阿里云默认封禁TCP 25端口出方向的访问流量,也就...
  • js判断访问设备是电脑还是手机
    用户访问网页的设备基本分为桌面设备(电脑)和移动设备(手机、pad等),为了更好的用户体验,很多站点都做了PC和mobile两种页面。那么除了通过后端程序判断访问设备外,可以通过js来判断访问设备是电脑还是手机吗?可以的!! 有朋友该问了,...
  • http如何301到https呢?
    HTTPS协议的站点信息更加安全,同时可降低网站被劫持的风险,Firefox和chrome浏览器对访问一些非https站点会提示风险,BD等搜索引擎也明确表态了对https站点的友好。那么我们如何部署https呢? 1.申请ssl证书。有很...
  • 网站标题和描述如何修改不会被降权?
    经常会有朋友向我咨询关于网站的title和description修改会不会导致网站被降权,以及如何修改网站的标题和描述才能避免网站被降权的一系列问题,那么今天我们就这些问题做一下分享吧! 一、频繁修改网站标题和描述会被降权么 1、很多人都喜...
  • web前端开发工程师, 你应该了解的几点SEO知识!
    一名优秀的web前端开发工程师,对于公司而言是非常难得的珍宝,他往往在很大角度上影响公司的销售业绩,他们的薪资也相对很高,一般来讲web前端开发工程师,需要了解CSS、HTML、SEO、DOM、BOM、Ajax、JavaScript等相关知...
  • 你知道国外十大域名注册商都有哪些吗?
    现在很多站长在注册域名的时候会选择国外的域名注册商,究其原因,主要是国内没有很完善的域名管理制度,在域名注册的时候有很多的限制。国外的域名注册管理体系比较完善,而且经验比较丰富。但是在选择国外域名注册商的时候,很多人不知道都有哪些国外域名注...
  • 百度谷歌雅虎搜狗提交链接入口大全
    只要有别的网站有你的网站地址和相关文字,就是没有链接,也可算作是一个反链接.网站优化的方向是你的网站文章数量要足够多,而且有便于蜘蛛出来的链接,蜘蛛也不喜欢抓取没有主题乱七八糟的网站 与优秀的网站首页交换链接。采用在百度中搜索某个关键词,排...
  • 一个可以使用电脑测试网站移动端的在线网站
    在我们做好一个自适应网站的时候,需要测试自适应效果,我们可以选择使用浏览器来直接测试,但有的时候还是需要一个外界的工具来具体看一下实际效果,所以就有了今天这篇文章,今天介绍的这个网站是群友推荐给我的,我本来用不着还没有用它的那个技术推荐给有...

评论 抢沙发



觉得文章有用就赞赏支持一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏