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>";
?>
作用:点击链接实现下载文件

PHP获取Linux当前目录下文件并实现下载功能的更多相关文章
- python 获取当前目录下文件(转)
今天继续整理原来写的 python 代码,下面是获取文件信息的 python 处理代码. 获取指定目录下文件的文件名以及文件的数量,然后列出其中还存在的目录名称: #!/usr/bin/env pyt ...
- Java获取Linux上指定文件夹下所有第一级子文件夹
说明:需要只获得第一级文件夹目录 package com.sunsheen.jfids.studio.monitor.utils; import java.io.BufferedReader; imp ...
- linux 目录下文件批量植入和删除,按日期打包
linux目录下文件批量植入 [root@greymouster http2]# find /usr/local/http2/htdocs/ -type f|xargs sed -i " ...
- IO流-获取指定目录下文件夹和文件对象【File类】
一.运用File类实现获取指定目录下文件夹和文件对象 1.File类 2.方法: 获取文件绝对路径 :getAbsolutePath 案例: import java.io.File; /** * 获取 ...
- 【Linux】文件拷贝-Linux当前目录所有文件移动到上一级目录(转)
Linux当前目录所有文件移动到上一级目录 mv * ../
- Linux系统下文件压缩与打包命令
Linux系统下文件压缩与打包命令 常用的压缩文件拓展名 * .Z * .zip * .gz * .bz2 * .xz * .tar * .tar.gz * .tar.bz2 * .tar.xz 压缩 ...
- Spring Boot 获取 java resources 下文件
Spring Boot 获取 java resources 下文件 Spring Boot 获取 resources 目录下的目录(例:获取 resources 目录下的 template 目录): ...
- 查看当前目录下文件个数: $find ./ | wc -l
2.1. 创建和删除 创建:mkdir 删除:rm 删除非空目录:rm -rf file目录 删除日志 rm *log (等价: $find ./ -name "*log" -ex ...
- linux CentOS 安装rz和sz命令 lrzsz 实现windows和linux之间的文件上传 下载
https://blog.nbhao.org/1902.html https://bbs.csdn.net/topics/391989523 https://www.cnblogs.com/zhoul ...
随机推荐
- R安装package报ERROR: a 'NAMESPACE' file is required
R安装package报错: [root@Hadoop-NN-01 mysofts]# R CMD INSTALL trimcluster_0.1-1.tar.gz * installing to li ...
- Hinge Loss、交叉熵损失、平方损失、指数损失、对数损失、0-1损失、绝对值损失
损失函数(Loss function)是用来估量你模型的预测值 f(x) 与真实值 Y 的不一致程度,它是一个非负实值函数,通常用 L(Y,f(x)) 来表示.损失函数越小,模型的鲁棒性就越好. 损失 ...
- 20165321 2017-2018-2《Java程序设计》课程总结
每周作业链接汇总 预备作业1:20165321 我期望的师生关系 预备作业2:20165321 学习基础与C语言学习心得 预备作业3:20165321预备作业3:Linux安装及命令入门 第一周作业: ...
- Ireport第一张web项目报表。
原先项目里面的统计分析报表都是和普通的系统页面一样开发的,SSM架构,从数据库一层一层往前面传数据,最后通过jsp表现出来,这次在领导的建议下使用IReport进行报表开发,果然还是要使用工具啊,社会 ...
- Css预处理器---Less(一)
一.简介: Less是一种动态样式语言,可以在样式中使用变量,继承,运算,函数 二.使用 (1)客户端使用 //引入您的.less样式文件,rel属性区别去css为stylesheet/less &l ...
- c# 类一般在哪里实例化,是在类内、方法内还是其他地方?
根据情况,你要一个页面内全局的就在类与方法之间实例化,如果一个方法需要使用这个类的对象,就在内部实例化
- jar包的读取
昨天在做项目插件的时候,因为会用到jar包中的一个文件来初始化程序.并且以后还是会访问这个文件,所以就想到干脆吧文件拷贝到指定目录.在拷贝的时候也费了好一会时间,这里涉及到了jar文件的操作,在这里记 ...
- wordpress练习
---恢复内容开始--- wp_options数据表储存网站的一些基本信息 bloginfo() //输出 bloginfo('stylesheet_url') //输出style.cs ...
- CentOS下nginx+php的配置及nginx开机启动配置
关闭防火墙 (不然外链接是访问不了 apache) service iptables stop 关闭安全系统 SELinux( 不然报403 访问页面错误 ) 1.Nginx安装主要在于配置文件的修改 ...
- linux centos重置mysql密码教程
第一步 查看确定安装了mysql # rpm -qa|grep -i mysql 执行效果如下 第二步 重启mysql: # /etc/init.d/mysqld 截图如下 因为我已经开了,所以用re ...