Apache Rewrite的主要功能

#Apache Rewrite的主要功能
#就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则表达式规范。
#平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等

在httpd.conf中去掉下面这句前面的#
LoadModule rewrite_module modules/mod_rewrite.so

RewriteOptions inherit
#此值强制当前配置可以继承其父配置。在虚拟主机级配置中,它意味着主服务器的映射表、条件和规则可以被继承。 在目录级配置中,它意味着其父目录的.htaccess中的条件和规则可以被继承。

<FilesMatch ".(bak|inc|lib|sh|tpl|lbi|dwt)$">
    order deny,allow
    deny from all
    #字符转义;可以用来查找元字符本身,比如. \
    #拒绝访问.bak/inc/lib/sh/tpl/lbi/dwt后缀的文件
    #^匹配你要用来查找字符串的开头;$匹配结尾;比如一个网站如果要求你填写的QQ号必须为5位到12位数字时,可以使用:^d{5,12}$。
</FilesMatch>

<FilesMatch ".(php|html|htm)$">
    order allow,deny
    allow from all
    #允许访问.php/html/htm后缀的文件        
</FilesMatch>

#<FilesMatch> 指令

#说明        包含作用于与正则表达式匹配的文件名的指令
#语法        <FilesMatch regex> ... </FilesMatch>
#作用域        server config, virtual host, directory, .htaccess
#覆盖项        all
#状态        核心(C)
#模块        core

#<FilesMatch>指令就像<Files>指令一样提供了针对文件名的访问控制。然而,它使用的是正则表达式。
#正则表达式:可以网上查找点资料,http://www.oschina.net/question/12_9507
#还有一个正则表达式在线测试工具:http://tool.oschina.net/regex#

RewriteEngine On
#RewriteEngine 用于开启或停用rewrite功能。
#rewrite configurations 不会自动继承,因此你得给每个你想用 rewrite功能的虚拟主机目录中加上这个指令。

原文地址:https://www.cnblogs.com/jasonxu19900827/p/5198720.html