找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1403|回复: 0
打印 上一主题 下一主题

php文件服务实现虚拟挂载其他目录示例

[复制链接]

2647

主题

2647

帖子

7881

积分

论坛元老

Rank: 8Rank: 8

积分
7881
跳转到指定楼层
楼主
发表于 2018-2-14 05:59:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            php文件服务实现虚拟挂载其他目录
[U]复制代码[/U] 代码如下:
0;
  }
  function format_file_size($var)
  {
   if($var
  $dir="F:";//不以/结尾
  $path="";
if(array_verify($_GET)&&isset($_GET["path"]))
{
  $path=base64url_decode($_GET["path"]);
  preg_match("#^[^/].*$|^.*\.$|^\..*$|\./\.|/\.|\./#",$path,$temp);
    if(array_verify($temp))
   {
    echo
      '
               
               
               ';
           echo "警告 index.php?path=".$_GET["path"]." 非法url
";
     exit;
      }
$path=preg_replace("#[/\/]{2,}#","/",$path);
}
if(is_dir($dir.$path))
    {
echo '
         
         
          ';
echo "目录   ".$path."
";
$dir_res=opendir($dir.$path);
while($filen=readdir($dir_res))
     {
      if($filen!='.'&&$filen!='..')
      {
          if(is_file($dir.$path.'/'.$filen))
          {
               echo '[url=index.php?path='.base64url_encode($path.'/'.$filen).']'.$filen.'[/url] ('.format_file_size(filesize($dir.$path.'/'.$filen)).")
\n";
             }else
           {
                echo '[url=index.php?path='.base64url_encode($path.'/'.$filen).']'.$filen."[/url]
\n";
           }
         }else if($filen=='..')
             {
               preg_match("#([^/]+/{1})*[^/]+(?=/)#",$path,$parent);
            if(array_verify($parent))
               {
                       echo '[url=index.php?path='.base64url_encode('/'.$parent[0]).']'.$filen."[/url]
\n";
                  }else
          {
                        echo '[url=index.php?path='.base64url_encode('/').']'.$filen."[/url]
\n";
                   }
          }
     }
echo '

         ';
}
    else if(is_file($dir.$path))
        {
                $file_size = filesize($dir.$path);
                header("Content-type: application/octet-stream");
                header("Accept-Ranges: bytes");
                header("Accept-Length: ".$file_size);
                Header("Content-Disposition: attachment; filename=".basename($dir.$path));
                readfile($dir.$path);//大文件请选择其他方式
           }else
            echo "警告:非法访问!";
?>
            
            
        
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端