Apache Rewrite 拟静态配置

  

Rewirte主要的功能就是实现URL的跳转和隐藏真实地址,基于Perl语言的正则

表达式规范。平时帮助我们实现拟静态,拟目录,域名跳转,防止盗链等

Apache配置:

 

支持httpd.conf 配置和目录 .htaccess配置

 

启用rewrite

# LoadModule rewrite_module modules/mod_rewrite.so

去除前面的 #

LoadModule rewrite_module modules/mod_rewrite.so

 

启用.htaccess

AllowOverride None    修改为: AllowOverride All

 

mod_rewrite 规则修正

 

1) R 强制外部重定向

2) F 禁用URL,返回403HTTP状态码。

3) G 强制URLGONE,返回410HTTP状态码。

4) P 强制使用代理转发。

5) L 表明当前规则是最后一条规则,停止分析以后规则的重写。

6) N 重新从第一条规则开始运行重写过程。

7) C 与下一条规则关联

 

如果规则匹配则正常处理,以下修正符无效

 

8) T=MIME-type(force MIME type) 强制MIME类型

9) NS  只用于不是内部子请求

10) NC 不区分大小写

11) QSA 追加请求字符串

12) NE 不在输出转义特殊字符   /%3d$1  等价于 =$1

 

.htaccess

ewriteEngine on
RewriteRule ^new/(.*).html$ new.php?id=$1
#RewriteRule ^new/(/d+)(/?)$  new.php?id=$1

 

 

如一个普通访问地址为  

 

   */php.php?id=2

 

可以转成:

 

   */PHP_2.html

 

或转成:

 

   */PHP/2/

你可能感兴趣的:(apache,正则表达式,Module,perl,url,.htaccess)