• PHP获取Linux当前目录下文件并实现下载功能


    使用nginx转发过去给php

    server{
    	listen 9099;
    	server_name 18.5.6.2;
    	location / {
    		proxy_http_version 1.1;
    		root /opt/zidian/crackPass;
    		index index.html index.htm index.php;
    	}
    	location ~* .php$ {
    		root /opt/zidian/crackPass;
    		fastcgi_pass 127.0.0.1:9000;
    		fastcgi_index index.php;
    		fastcgi_param SCRIPT_FILENAME /opt/zidian/crackPass$fastcgi_script_name;
    		include fastcgi_params;
    	}
    }

    server_name  公网ip

    fastcgi_pass 127.0.0.1:9000   转发给php(使用netstat -tlnp | grep php看到php的端口是9000)

    index.php

    <?php
    #echo "<body style='background:url(o_cheng.jpg)'; backgroundRepeat:'no-repeat'; backgroundPosition='top center'; >";
    header("Content-type: text/html; charset=utf-8");
    function getsize($size, $format = 'kb') {
        $p = 0;
        if ($format == 'kb') {
            $p = 1;
        } elseif ($format == 'mb') {
            $p = 2;
        } elseif ($format == 'gb') {
            $p = 3;
        }
        $size /= pow(1024, $p);
        return number_format($size, 3);
    }
    function read_all ($dir){
        if(!is_dir($dir)) return false;
        
        $handle = opendir($dir);
    
        if($handle){
            while(($fl = readdir($handle)) !== false){
                $temp = iconv('utf-8','utf-8',$dir.DIRECTORY_SEPARATOR.$fl);
                if(is_dir($temp) && $fl!='.' && $fl != '..'){
                    #echo '目录:'.$temp.'<br>';
                    #read_all($temp);
                }else{
                    if($fl!='.' && $fl != '..'){
    		    #echo $fl;
                        #echo '文件:'.$temp.'<br>';
    		    $cfiletime = filectime($fl);
    		    echo "文件:";
    		    echo "<span style='font-size:6px;'>";
    		    echo "<a href='$fl' download='$fl'>'$fl'";
    		    echo "</a>";
    		    echo "</span>";
    		    $size = filesize($fl);
    		    $size = getsize($size, 'mb');
    		    echo "容量:";
    		    echo "<span style='font-size:6px;'>$size.'M'";
    		    echo "</span>";
    		   # echo "创建时间:";
    		   # echo "<span style='font-size:6px;'>" .date("Y-m-d H:i:s",$cfiletime);
    		    echo "</span>";
    		    echo "<br>";
                    }
                }
            }
        }
    }
    read_all('.');
    echo "<br/>";
    echo "<a href='400W常用密码/index.php'>";
    echo "<button>400W常用密码</button>";
    echo "</a>";
    #echo "</body>";
    ?>

    index.php(2018-06-21)

    <?php
    #echo "<body style='background:url(o_cheng.jpg)'; backgroundRepeat:'no-repeat'; backgroundPosition='top center'; >";
    header("Content-type: text/html; charset=utf-8");
    echo "<h3 align='center'>";
    echo "夏天分享小知识";
    echo "</h3>";
    ini_set('date.timezone','Asia/Shanghai');
    function getsize($size, $format = 'kb') {
        $p = 0;
        if ($format == 'kb') {
            $p = 1;
        } elseif ($format == 'mb') {
            $p = 2;
        } elseif ($format == 'gb') {
            $p = 3;
        }
        $size /= pow(1024, $p);
        return number_format($size, 3);
    }
    function read_all ($dir){
        if(!is_dir($dir)) return false;
        
        $handle = opendir($dir);
    
        if($handle){
            while(($fl = readdir($handle)) !== false){
                $temp = iconv('utf-8','utf-8',$dir.DIRECTORY_SEPARATOR.$fl);
                if(is_dir($temp) && $fl!='.' && $fl != '..'){
                    #echo '目录:'.$temp.'<br>';
                    #read_all($temp);
                }else{
                    if($fl!='.' && $fl != '..'){
    		    #echo $fl;
                        #echo '文件:'.$temp.'<br>';
    		    $cfiletime = filectime($fl);
    		    echo "<table>";
    		    echo "<td width=400px>";
    		    echo "文件:";
    		    echo "<span style='font-size:6px;'>";
    		    echo "<a href='$fl' download='$fl'>'$fl'";
    		    echo "</a>";
    		    echo "</span>";
    		    $size = filesize($fl);
    		    $size = getsize($size, 'mb');
    		    echo "</td>";
    		    echo "<td width=400px>";
    		    echo "容量:";
    		    echo "<span style='font-size:6px;'>$size.'M'";
    		    echo "</span>";
    		    echo "</td>";
    		    echo "<td width=400px>";
    		    echo "修改时间:";
    		    echo "<span style='font-size:6px;'>" .date("Y-m-d H:i:s",$cfiletime);
    		    echo "</span>";
    		    echo "<br>";
    		    echo "</td>";
    		    echo "</table>";
                    }
                }
            }
        }
    }
    read_all('.');
    echo "<br/>";
    echo "<a href='400W常用密码/index.php'>";
    echo "<button>400W常用密码</button>";
    echo "</a>";
    echo " ";
    echo "<a href='WPA英文字典/index.php'>";
    echo "<button>WPA英文字典</button>";
    echo "</a>";
    echo " ";
    echo "<a href='弱口令集/index.php'>";
    echo "<button>弱口令集</button>";
    echo "</a>";
    echo " ";
    echo "<a href='生日1980-2010年/index.php'>";
    echo "<button>生日1980-2010年</button>";
    echo "</a>";
    echo " ";
    echo "<a href='超级字典/index.php'>";
    echo "<button>超级字典</button>";
    echo "</a>";
    #echo "</body>";
    ?>

    返回(2018-06-21)

    <?php
    #echo "<body style='background:url(o_cheng.jpg)'; backgroundRepeat:'no-repeat'; backgroundPosition='top center'; >";
    header("Content-type: text/html; charset=utf-8");
    echo "<h3 align='center'>";
    echo "夏天分享小知识";
    echo "</h3>";
    ini_set('date.timezone','Asia/Shanghai');
    function getsize($size, $format = 'kb') {
        $p = 0;
        if ($format == 'kb') {
            $p = 1;
        } elseif ($format == 'mb') {
            $p = 2;
        } elseif ($format == 'gb') {
            $p = 3;
        }
        $size /= pow(1024, $p);
        return number_format($size, 3);
    }
    function read_all ($dir){
        if(!is_dir($dir)) return false;
        
        $handle = opendir($dir);
    
        if($handle){
            while(($fl = readdir($handle)) !== false){
                $temp = iconv('utf-8','utf-8',$dir.DIRECTORY_SEPARATOR.$fl);
                if(is_dir($temp) && $fl!='.' && $fl != '..'){
                    #echo '目录:'.$temp.'<br>';
                    #read_all($temp);
                }else{
                    if($fl!='.' && $fl != '..'){
    		    #echo $fl;
                        #echo '文件:'.$temp.'<br>';
    		    $cfiletime = filectime($fl);
    		    $mfiletime = filemtime($fl);
    		    echo "<table>";
    		    echo "<td width=400px>";
    		    echo "文件:";
    		    echo "<span style='font-size:6px;'>";
    		    echo "<a href='$fl' download='$fl'>'$fl'";
    		    echo "</a>";
    		    echo "</span>";
    		    $size = filesize($fl);
    		    $size = getsize($size, 'mb');
    		    echo "</td>";
    		    echo "<td width=400px>";
    		    echo "容量:";
    		    echo "<span style='font-size:6px;'>$size.'M'";
    		    echo "</span>";
    		    echo "</td>";
    		    echo "<td width=400px>";
    		    echo "修改时间:";
    		    echo "<span style='font-size:6px;'>".date("Y-m-d H:i:s",$cfiletime);
    		    echo "</span>";
    		    #echo "创建时间:".date("Y-m-d H:i:s",$cfiletime);
    		    #echo "修改时间:".date("Y-m-d H:i:s",$mfiletime);
    		    echo "<br>";
    		    echo "</td>";
    		    echo "</table>";
                    }
                }
            }
        }
    }
    read_all('.');
    echo "<br/>";
    echo "<a href='../index.php'>";
    echo "<button>返回</button>";
    echo "</a>";
    #echo "</body>";
    ?>

    作用:点击链接实现下载文件

  • 相关阅读:
    after() 和 remove() 实现替换
    jquery not() 方法
    jQuery filter() , end()
    jquery 拓展函数集
    window onload || jquery $()
    java jdk environment variables
    mysql 64 zip download
    闭包初探
    hdu 1195 Open the Lock (BFS)
    poj 1743 Musical Theme (后缀数组+二分法)
  • 原文地址:https://www.cnblogs.com/chenglee/p/9143399.html
Copyright © 2020-2023  润新知