include的妙用,实现路径加密

时间:2010-01-07 16:56:02   来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:变量if(!empty($_POST['path'])){     //获取POST传递过来的变量 $path = $_POST['path']; $path = isBase::decrypt(urlDecode($path));}//解析真实路径if(empty($path)){ //header("Location: login.php"); exit;}if(!preg_match("/(^http://)|([?|&|=])/",$path)){//跳转到实际执行文件的路径...
  正文:

1.中转程序include.inc
<?
include_once  'include/Base.PHP';
$path = '';
$url = isBase::decrypt(urlDecode($_SERVER['QUERY_STRING']));
parse_str($url);    //获取通过url地址GET传递过来的变量
if(!empty($_POST['path'])){     //获取POST传递过来的变量
 $path = $_POST['path'];
 $path = isBase::decrypt(urlDecode($path));
}
//解析真实路径
if(empty($path)){
 //header("Location: login.php");
 exit;
}
if(!preg_match("/(^http://)|([?|&|=])/",$path)){
//跳转到实际执行文件的路径
 chdir(dirname($path));
 include_once basename($path);
    exit;
}
?>
index.php与include.inc同目录
<?
include include.inc;
?>
2.修改程序中的链接()
"index.php?".encrypt("path=/test/test.php&test=123&test2=4321")
3.修改程序中的POST表单
Form都提交到为 index.php
中间加一个隐藏表单 <hidden name=path value="/test/test.php">
4.修改前端Html页面的路径
baseref=/test
5.加解密函数就由自己提供了
总结:
用这种方法比较繁琐,只能隐藏后台脚本的路径,前端的脚本路径仍然可以在源文件中看得到(baseref)
在地址栏上看到的地址都是index.php?xxxxxxxx


来源:http://www.002pc.com/master/College/Programming/PHP/11592.html

收藏到:

关于《include的妙用,实现路径加密》文章的评论

共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面

随机文章

    SQL Error: select * from ***_ecms_article where classid='86' and checked=1 order by rand() limit 10

顶出来的热门

    SQL Error: select * from ***_ecms_article where classid='86' and checked=1 order by diggtop desc,id desc limit 10
站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td