mod_rewrite
Posted 红孩儿你好
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mod_rewrite相关的知识,希望对你有一定的参考价值。
一、简介
二、实现原理:
只有当用户的WEB请求最终被导向到某台WEB服务器的Apache后台,则这台WEB服务器接受
进来的请求,根据配置文件该请求是主配置还是虚拟主机,再根据用户在浏览器中请求的
URI来配对重写规则并且根据实际的请求路径配对.htaccess中的重写规则。最后把请求
的内容传回给用户,该响应可能有两种:
1) 对浏览器请求内容的外部重定向(Redirect)到另一个URL。
让浏览器再次以新的URI发出请求(R=301或者R=302,临时的或是永久的重定向)
如:一个网站有正规的URL和别名URL,对别名URL进行重定向到正规URL,或者网站改换
成了新的域名
则把旧的域名重定向到新的域名(Redirect)
2) 也可能是由Apache内部子请求代理产生新的内容送回给客户[P,L]
这是Apache内部根据重写后的URI内部通过代理模块请求内容并送回内容给客户,而客户
端浏览器并
不知道,浏览器中的URI不会被重写。但实际内容被Apache根据重写规则后的URI得到。
如:在公司防火墙上运行的Apache启动这种代理重写规则,代理对内部网段上的WEB服务
器的请求。
三、配置实例
以上是关于mod_rewrite的主要内容,如果未能解决你的问题,请参考以下文章
Apache如何开启Mod_rewrite模块以及PHPWind伪静态(全伪)
PHP Pretty URLs 两个 mod_rewrite 规则的组合?