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

PHP
php预定义常量
ob_start(),ob_start(''ob_gzhandler'')使用
一个PHP模板,主要想体现一下思路
简单的过滤字符串中的HTML标记
介绍几个array库的新函数 php
用ADODB来让PHP操作ACCESS数据库的方法
ADODB的数据库封包程序库
Adodb的十个实例(清晰版)
PHP通过COM使用ADODB的简单例子
使用adodb lite解决问题
PHP获得用户使用的代理服务器ip即真实ip
adodb与adodb_lite之比较
smarty+adodb+部分自定义类的php开发模式
刚才在简化php的库,结果发现很多东西
PHP中通过ADO调用Access数据库的方法测试不通过
AJAX for PHP简单表数据查询实例
PHP文件上传实例详解!!!
PHP小技巧搜集,每个PHPer都来露一手
超强分页类2.0发布,支持自定义风格,默认4种显示模式
默默简单的写了一个模板引擎

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


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