ReWrite学习笔记小结

比如,下面,我要实现这样的URL: 

http://xxx.com/0725 

http://xxx.com/0726 

http://xxx.com/0727 

… 

创新互联建站专注于企业全网营销推广、网站重做改版、福建网站定制设计、自适应品牌网站建设、H5建站商城网站开发、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为福建等各大城市提供网站开发制作服务。

上面xxx.com是一个记录《今天是》这样的历史内容的一个测试站点。上面链接的意思,就是显示07月25日的历史上发生了什么事情,类似这样。这样看起来就很美观、整齐了。要不然,可能的地址就是: 

http://xxx.com/index.php?t... 

http://xxx.com/index.php?t... 

http://xxx.com/index.php?t... 

… 

现在我就是要实现把 index.php?today= 隐藏掉。以下是代码: 

1..htaccess 文件 

 

  RewriteEngine On 

  RewriteBase / 

  RewriteCond %{REQUEST_FILENAME} !-f 

  RewriteCond   %{REQUEST_FILENAME} !-d 

  RewriteRule ^([0-9]+)$   /index.php?today=$1 

   

粗体字这里我说明一下,其它的按这个格式吧,具体我现在也不理解。 

[0-9]的意思是,参数只能是0~9这些数字,如果你要包含任何字符,就改为:

RewriteRule ^(.+)$ /index.php?today=$1   

这里[0-9]改为了. ,这个.就代表任意字符。当然复杂的还很复杂,我们暂时不管。 

2.index.php文件  


复制代码 代码如下:


//rewrite 测试      

$uid =$_REQUEST['today'];      

?>      

      

      

rewrite 测试      

      

      

今天是,看看历史上的今天都发生了什么事情?
      

……      

      

    

这里参数就会传递给index.php文件里的$today,在这个程序内,你就可以根据参数,进行处理,如查询数据库啦、做运算啦等,然后再显示相应的数据出来,就可以了。


实现方法2 


复制代码 代码如下:


//url示例:soft.php/1,100,8630.html     

//利用server变量 取得PATH_INFO信息 该例中为 /1,100,8630.html  也就是执行脚本名后面的部分     

if(@$path_info =$_SERVER["PATH_INFO"]){     

    if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){     

        $gid     =intval($arr_path[1]); //取得值 1     

        $sid     =intval($arr_path[2]);  //取得值100     

        $softid  =intval($arr_path[3]);  //取得值8630     

        //相当于soft.php?gid=1&sid=100&softid=8630     

    }else die("Path:Error!");     

}else die("Path:Nothing!");     

echo($gid);     

echo("
");     

echo($sid);     

echo("
");     

echo($softid);     

?>   


分享题目:ReWrite学习笔记小结
分享链接:http://www.shufengxianlan.com/qtweb/news37/484587.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联