PHP根据网址跳转到指定网页
网络整理 - 08-11
有时候我们需要根据网址路径请求将网页跳转到指定页面,用PHP可以这样实现:<?php
$s=$_SERVER['QUERY_STRING'];
if($s==""){
$s="";
}
if($s==""){
$s="";
}
header("Location:".$s."");
?>
$_SERVER['QUERY_STRING']所获得的是网址中问号之后的字符串,比如网址是?url=http://www.colacat.cn或?http://www.colacat.cn,获取的内容是url=http://www.colacat.cn。
上面的代码有一个缺陷:大家知道,顶级域名后面可以带斜杠也可以不带,如果上面的网址改成?http://www.colacat.cn/,那么上面的代码就不起作用了。所以,完善的代码可以使用strstr函数来判断,把判断语句改成:
<?php
$s=$_SERVER['QUERY_STRING'];
if(str($s,"")){
$s="";
}
if(strstr($s,"")){
$s="";
}
header("Location:".$s."");
?>
用strstr判断$s字符串里是否包含要过滤的网址域名主体部分,有的话就替换成自己的网址,这样判断就可以防止字符串的细微变化绕过过滤判断。