程序员人生 网站导航

include的妙用,实现路径加密

栏目:php教程时间:2014-03-22 21:40:16

1.中转程序include.inc

  1. <? 
  2. include_once 'include/Base.php'
  3. $path = ''
  4. $url = isBase::decrypt(urlDecode($_SERVER['QUERY_STRING'])); 
  5. parse_str($url); //获取通过url地址GET传递过来的变量 
  6. if(!emptyempty($_POST['path'])){ //获取POST传递过来的变量 
  7. $path = $_POST['path']; 
  8. $path = isBase::decrypt(urlDecode($path)); 
  9. //解析真实路径 
  10. if(emptyempty($path)){ 
  11. //header("Location: login.php"); 
  12. exit
  13. if(!preg_match("/(^http:/)|([?|&|=])/",$path)){ 
  14. //跳转到实际执行文件的路径 
  15. chdir(dirname($path)); 
  16. include_once basename($path); 
  17. exit
  18. ?> 

index.php与include.inc同目录

  1. <? 
  2. include include.inc; 
  3. ?> 

2.修改程序中的链接()

  1. "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.

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐