当前位置: 首页 > 图文教程 > 网络编程 > PHP > IIS 不用 rewrite 实现页面静态化的方法

PHP
PHP基础教程(11):PHP函数
PHP基础教程(12):PHP表单和用户输入
PHP基础教程(13):PHP $_GET
PHP基础教程(14):PHP $_POST
PHP高级教程(1):PHP日期Date()
PHP高级教程(2):PHP引用文件
PHP高级教程(3):PHP文件处理
PHP高级教程(4):PHP文件上传
PHP高级教程(5):PHP Cookies
PHP高级教程(6):PHP Sessions
PHP高级教程(7):PHP发送电子邮件
PHP高级教程(8):PHP安全的电子邮件
PHP高级教程(9):PHP错误处理
PHP高级教程(10):PHP异常处理
PHP高级教程(11):PHP过滤器(Filter)
PHP+MySQL教程(1):MYSQL简介
PHP+MySQL教程(2):连接MYSQL数据库
PHP+MySQL教程(3):创建数据库和表
PHP+MySQL教程(4):MySQL Insert Into
PHP+MySQL教程(5):MySQL Select

PHP 中的 IIS 不用 rewrite 实现页面静态化的方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 88 ::
收藏到网摘: n/a

 

用rewrite做的静态页面实际不存在,iisewrite又不稳定经常404,于是就有了这篇文章。

原理:404页面类型用PHP(Asp也可以),结合小偷,实现页面静态化

用discuz!论坛archiver举例:
404程序页面:http://bbs.pkxp.com/error.php
演示:http://bbs.pkxp.com/archiver/
error.php源码:

<?php
$url = $_SERVER['QUERY_STRING'];
$url = str_replace("404;","",$url);
if (!ereg ('archiver', $url))
echo "404错误"; 
//404错误页面显示内容
else {       
        $url = str_replace("archiver/","archiver/?",$url);
        $str = file("$url");
        $count = count($str);
        for ($i=0;$i<$count;$i++){
                   $file .= $str[$i];
                }
        echo $file;
//实现archiver/?xx.html 变成archiver/xx.html
}
?>