php include的妙用,实现路径加密

yipeiwu_com5年前PHP代码库
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

相关文章

nginx下安装php7+php5

起步 之前在服务器搭建了lamp环境,想换用性能更强的nginx作为服务器软件,又想将php5升级为php7. 安装nginx无需赘述:sudo apt-get install ng...

PHP实现数字补零功能的2个函数介绍

在PHP中至少有两个函数能够帮助我们快速实现数字补零:首先是PHP str_pad函数:复制代码 代码如下:#str_pad — 使用另一个字符串填充字符串为指定长度顾名思义这个函数是针...

dede全站URL静态化改造[070414更正]

1、将include复制到网站中的include目录。 2、修改数据库 将所有文档设置为“仅动态”,可以进入数据库管理中,执行下面命令: update dede_archive...

Drupal 添加模块出现莫名其妙的错误的解决方法(往往出现在模块较多时)

状况如下: 1、点击保按钮后,不能正常转到页面,出现空白页面; 2、刷新页面,发出导航中许多项已经没有了,还存在的项点击也不能进入正常的页面。 测试了多次没有发现任何问题,多次重装、测试...

[企业公众号]升级到[企业微信]之后发送消息失败的解决方法

本文实例讲述了[企业公众号]升级到[企业微信]之后发送消息失败的解决方法。分享给大家供大家参考,具体如下: 最近,看到消息,说是微信把企业公众号升级到企业微信。当时并没有在意,但是后来发...