闲吧资源站
专注于虚拟主机、VPS介绍、评测及推荐!

利用404.PHP错误文件伪静态

今天在好文博客上看到它利用404.PHP错误文件伪静态,并且成功应用在FREE.FR上,个人感觉方法不错,特记录下来。以便日后应用在那些不知道自定义404的空间商。有的空间不支持Rewrite,但可以自定义404错误文件,这时候我们可自定义错误文件为404.php,这里以Discuz! 7.2为例,404.php文件内容为:

$url=$_SERVER[‘REQUEST_URI’];
if(preg_match(“/^\/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$/”,$url,$matcher)){
$tid= $matcher[1];
$extra = “page\%3D”.$matcher[3];
$page = $matcher[2];
include(“viewthread.php”);
}elseif(preg_match(“/^\/forum-([0-9]+)-([0-9]+)\.html$/”,$url,$matcher)){
$fid = $matcher[1];
$page = $matcher[2];
include(“forumdisplay.php”);
}elseif(preg_match(“/^\/space-(username|uid)-(.+)\.html$/”,$url,$matcher)){
$$matcher[1] = $matcher[2];
include(“space.php”);
}elseif(preg_match(“/^\/archiver\/((fid|tid)-[\w\-]+\.html)$/”,$url,$matcher)){
$_SERVER[‘QUERY_STRING’] = $matcher[1];
include(“archiver/index.php”);
}elseif(preg_match(“/^\/tag-(.+)\.html$/”,$url,$matcher)){
$name = $matcher[1];
include(“tag.php”);
}else{
header(“HTTP/1.0 404 Not Found”);
echo “File Not Found”;
}
?>

然后后台开启伪静态选项,这时候应该就可以搞掂了

转载请注明出处:闲吧资源站 » 利用404.PHP错误文件伪静态

分享到:更多 ()

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址