最新消息:伪静态技术大全博客开通啦!再也不为伪静态东奔西走!更多问题可以反映给博主:野狼,QQ1615241386 QQ交流群:112696646

伪静态跳转,怎么实现参数运算?

网络杂谈 野狼 71浏览 0评论

伪静态是没有办法实现参数运算的。他只可以对参数进行传递,不能进行运算。更不可以进行一些通信、sql读取等。所以如果是要进行跳转,就只能让动态程序去操作运算。

今天我们就见到一个客户,想要实现参数之间的运算。比如说,这样的效果:

rewrite ^/([0-9]+)/([0-9]+)/([0-9]+).html$ bbb./$1/$2/$3.html redirect;
使$1的值加10输出,$2的值加20输出,
aaa./100/200/300.html
跳转到
bbb./110/220/300.html
这个时候,就需要获得网址的参数,然后进行加法运算,实际上是无法实现的。但我们可以有另外一个思路,那就是做一个动态程序,把伪静态网址映射到动态网址上,然后实现跳转,思路如下:

第一步:写好伪静态映射规则

上边的那个需求,就可以写成这样的伪静态规则:

rewrite ^/([0-9]+)/([0-9]+)/([0-9]+).html$      /tz.php?a=$1&b=$2&c=$3 redirect;

第二步:写好动态程序

t.php的动态程序,可以写好。

<?php
$a=$_GET['a'];
$b=$_GET['b'];
$c=$_GET['c'];
$a=$a+10;
$c=$b+20;
$url="http://www.zishitou.com/".$a."/".$b."/".$c.".html";
die($url);
header('HTTP/1.1 301 Moved Permanently');//发出301头部
header('Location:'.$url);//跳转到我的新域名地址
?>  

这个时候,php就可以获得参数,进行运算,并且进行跳转。


发表评论
请遵守网络文明公约,理性发言
访客头像

还没有人来评论,快来抢个沙发吧!