admin |
2017-10-28 20:43 |
今天在好文博客上看到它利用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”; } ?>
|
|