Apache URL-Rewrite重写

一、Rewrite  

1、Rewrite规则简介

       Rewrite主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言,可基于服务级的(http.conf)和目录级的(.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。

安装Rewrite模块的两种方式:

方法一:是编译apache的时候就直接安装Rewrite模块

方法二:编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rewrite模块

针对该两种方式的具体介绍在之前的博文中具有详细的描述;

 

2、基于服务器级别的(httpd.conf)有两种方法:

方法一:在httpd.conf的全局下,直接利用RewriteEngine on来打开Rewrite功能;

方法二:在局部里利用RewriteEngine on来打开Rewrite功能,下面将会举例说明,需要注意的是,必须在每个virtualhost里用RewriteEngine on 来打开Rewrite功能,否则virtualhost里没有RewriteEngine on它里面的规则也不会生效;

      基于目录级的(./htaccess),要注意一点那就是必要打开此目录的FollowSymLinks属性且在./htaccess里要声明RewriteEngine on

 

3、Apache mod_rewrite规则重写的标志一览:

1) R[=code](force redirect)                 强制外部重定向
强制在替代字符串加上 http://thishost [:thisport]/前缀重定向到外部的URL.如果code不指定,将用缺省的302 HTTP状态码。
2) F(force URL to be forbidden)            禁用URL,返回403HTTP状态码。
3) G(force URL to be gone)                  强制URL为GONE,返回410HTTP状态码。
4) P(force proxy)                                   强制使用代理转发。
***5) L(last rule)                               表明当前规则是最后一条规则,停止分析以后规则的重写。  -- 类似防火墙 - 一旦匹配则不继续
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值