[php]<?php
/**
* $Id$
* Filename : rewrite.mod.php
* Author : 额系菜屁屁
* Email : lianxiwoo@gmail.com | hotmail.com
* Create : 200606
* LastMod : 2006
* Usage : 只需在你所有的页面有输出之前包含此文件即可判断你的环境是否支持 path_info
*
* $_SERVER['PATH_INFO_SURPORT'] 为 1 说明环境支持,为 0 不支持
* $_SERVER['MOD_REWRITE_OPEN'] 为 1 说明系统用了 path_info 为 0 说明没有用
*/
//ini_set('display_errors', 1);
//error_reporting(E_ALL ^ E_NOTICE);
//header("Content-Type: text/plain");
//header("Content-type: text/html; charset=UTF-8");
// {{{ 判断是否支持 path_info
if (isset($_GET['testModRewrite']) && $_GET['testModRewrite']){
if (str_replace($_SERVER['SCRIPT_NAME'], '', $_SERVER['PHP_SELF'])){
die('1');
}else{
die('');
}
}
$a_20060623 = strtolower(str_replace(strstr($_SERVER['SERVER_PROTOCOL'], '/'), "", $_SERVER['SERVER_PROTOCOL'])).'://'.$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
if ($a_20060623 = file_get_contents($a_20060623.'/a/1?testModRewrite=1')){
$_SERVER['PATH_INFO_SURPORT'] = 1;
}else{
$_SERVER['PATH_INFO_SURPORT'] = 0;
}
unset($a_20060623);
// }}}
// {{{
/**
* 注意:stristr 需要 php5 支持
*
* @createtime 20060623
* @author 屁屁注:此作者还是楼主,我这里只是做个补充,谢谢,^_^
* @modifiedby $LastChangedBy: $
* @parameter
* @return
* @throws none
*/
function mod_rewrite(){
if(isset($_SERVER['PATH_INFO']) && !stristr($_SERVER['SERVER_SOFTWARE'], 'Abyss')){
$pi = substr($_SERVER['PATH_INFO'], 1);
$pi = explode('/', $pi);
$a = sizeof($pi);
$qs = array();
for($i = 0; $i < $a; $i += 2){
if ('' != $pi[$i]){
$_GET[$pi[$i]] = $pi[$i+1];
$qs[] = $pi[$i].'='.$pi[$i+1];
}
}
$_SERVER['QUERY_STRING'] = join("&", $qs);
$_SERVER['PHP_SELF'] = str_replace($_SERVER['PATH_INFO'], "", $_SERVER['REQUEST_URI']);
$_SERVER['REQUEST_URI'] = $_SERVER['PHP_SELF'].($_SERVER['QUERY_STRING'] ? '?'.$_SERVER['QUERY_STRING'] : '');
$_SERVER['SCRIPT_URL'] = $_SERVER['PHP_SELF'];
$_SERVER['SCRIPT_URI'] = strtolower(str_replace(strstr($_SERVER['SERVER_PROTOCOL'], '/'), "", $_SERVER['SERVER_PROTOCOL'])).'://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
$_SERVER['MOD_REWRITE_OPEN'] = 1;
}else{
$_SERVER['MOD_REWRITE_OPEN'] = 0;
}
}
mod_rewrite();
/**/
echo '<xmp>';
print_r($_SERVER);
echo '</xmp>';
// }}}
?>[/php]
下面是附件,需要把 .rar 去掉
[ 本帖最后由 额系菜屁屁 于 2006-6-24 01:10 AM 编辑 ] |