+ -
当前位置:首页 → 问答吧 → 求助 URL重写 我忘了

求助 URL重写 我忘了

时间:2011-08-29

来源:互联网

  1. RewriteEngine On
  2. RewriteCond  %{HTTP_HOST}   ^(.*)\.baidu.com$   
  3. RewriteRule ^(.*)$  %1/index.php
复制代码
这个重写是什么意思,还有RewriteCond  %{HTTP_HOST}   ^(.*)\.baidu.com$   是什么意思? 求高手洗脑

作者: Ankama_z   发布时间: 2011-08-29



所有合起来的意思是:所有baidu.com的二级域名下的请求都重写到主域名下的二级目录中的index.php上,目录名称是.baidu.com 前面的字符串

RewriteCond  %{HTTP_HOST}   ^(.*)\.baidu.com$  意思是:如果请求的主机名完全匹配^(.*)\.baidu.com$ 则执行RewriteRule 规则

实现的效果通常都是 把二级目录变成二级域名
悲剧的是这个语句竟然没有前置检查,要是二级目录不存在,那么会出现什么状况呢?

作者: llh110220   发布时间: 2011-08-29

发错版了吧……

作者: konakona   发布时间: 2011-08-29

回复 llh110220
大哥, 那为啥RewriteRule 后面要加 ^(.*)$     不是规则已经定死他只能进
^(.*)\.baidu.com$吗?

作者: Ankama_z   发布时间: 2011-08-29



回复 Ankama_z

这里一定要有个值,

你也可以写成 .

作者: llh110220   发布时间: 2011-08-29

回复 llh110220
大哥   我检查了路径什么的都没错  但它始终报404

作者: Ankama_z   发布时间: 2011-08-29

是^(.*)\.baidu\.com而不是^(.*)\.baidu.com  com前面那个点的斜杠你忘记了

作者: llh110220   发布时间: 2011-08-29