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

PHP
php代码优化及php相关问题总结
实现提高PHP效率的集中方法
PHP中删除目录的三种方法
PHP索引数组、多维数组以及相关数组
PHP网站开发遇到的中文编码
PHP动态生成switch-PHP的eval()的使用
php获得一个文件夹下所有文件的文件名
php生成outlook-php日历文件
php的register_shutdown_function函数详解
PHP脚本的8个技巧之一-Apache DSO
PHP使用mail函数发送邮件标题乱码问题
DISCUZ架构:AJAX之ajax.js 函数之一
DISCUZ架构:AJAX之ajax.js 函数之二
DISCUZ架构:AJAX之ajax.js 函数之三
你用用PHP获取前天和昨天日期
php语言中switch的用法介绍
PHP实例:FCKeditor 的配置和使用方法
PHP5.0对象模型探索之抽象方法和抽象类
php的content-type=text/html问题
PHP分析.wav文件并绘制png格式的波形图

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 76 ::
收藏到网摘: 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
}
?>