记录我的一些生活写照、无聊的牢骚、内心世界的活动 注册 | 登陆

TinyFileManager一款单文件php文件管理程序

TinyFileManager一款单文件php文件管理程序
功能
支持上传下载
支持URL上传
支持多用户,账号/密码
支持用户权限设置
支持多国语言
支持在线预览
支持在线压缩/解压,使用zip
支持在线创建/编辑/粘贴/复制/移动/删除
支持在线搜索/筛选
支持隐藏指定文件及文件夹
源码
官网:https://tinyfilemanager.github.io
说明:https://tinyfilemanager.github.io/docs
演示:https://tinyfilemanager.github.io/demo
GitHub:https://github.com/prasathmani/tinyfilemanager
密码生成
https://tinyfilemanager.github.io/docs/pwd.html
https://uutool.cn/php-password/
https://www.toolkk.com/tools/php-password-hash
使用
下载得到的压缩包解压后将其中的tinyfilemanager.php文件上传至网站目录并重命名为index.php即可
然后打开网站即可看到登录页面,默认有两个用户用户名:admin密码:admin@123和用户名:user密码:12345
账户密码
修改用户及密码只需修改index.php中以下代码
前面的是用户名,密码部分采用的是PHP哈希密码值,从上面给出的密码生成网站生成即可;
XML/HTML代码
  1. // Users: array('Username' => 'Password', 'Username2' => 'Password2', ...)
  2. $auth_users = array(
  3.     'admin' => '$2y$10$axZWlisI..n9xmULN4gbhectUdOpu0z64xb9ysycHQ5ubKYcEY5sW', //admin
  4.     'user' => '$2y$10$.mwmDmZH2003EjFobn86QuU3kr6NAmUYAaMVWQdLXYkirie7EJxj6', //12345
  5. );
如果不想使用账户密码,可以修改以下代码
$use_auth = true;
# 要使用账号密码设置为true,不使用账号密码设置为false
设置语言
index.php这个程序文件是默认英语,不能设置成其它语言
修改语言需要将压缩包内的语言文件translation.json一同上传即可
然后即可在目录设置中修改语言了
隐藏文件
如果需要隐藏指定文件或文件夹,可以修改以下代码
 
XML/HTML代码
  1. $exclude_items = array();
  2. # 例:隐藏名为sunpma的文件夹,隐藏名为sunpma.mp4的视频文件,隐藏所有后缀为.zip的文件;
  3. # 注意最后一个设置项没有,符号;
  4. $exclude_items = array(
  5.     'sunpma',
  6.     'sunpma.mp4',
  7.     '*.zip'
  8. );
Docker中运行(php+nginx)
Dockerhub:https://hub.docker.com/r/wbsu2003/tinyfilemanager
Github:https://github.com/prasathmani/tinyfilemanager
XML/HTML代码
  1. $ docker run -d -v /absolute/path:/var/www/html/data -v /absolute/path/index.php:/var/www/html/index.php -p 80:80 --restart=always --name tinyfilemanager tinyfilemanager/tinyfilemanager:master
如何修改默认工作目录,例如修改到子目录data下面,这样客户就看不到本程序php源码,比较安装,但是访问时候需要加/data,访问子目录。
默认配置:
XML/HTML代码
  1. // Root path for file manager
  2. // use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
  3. $root_path = $_SERVER['DOCUMENT_ROOT'];
  4. // Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
  5. // Will not working if $root_path will be outside of server document root
  6. $root_url = '';
修改后配置:
XML/HTML代码
  1. // Root path for file manager
  2. // use absolute path of directory i.e: '/var/www/folder' or $_SERVER['DOCUMENT_ROOT'].'/folder'
  3. $root_path = $_SERVER['DOCUMENT_ROOT'].'/data';
  4. // Root url for links in file manager.Relative to $http_host. Variants: '', 'path/to/subfolder'
  5. // Will not working if $root_path will be outside of server document root
  6. $root_url = 'data/';
关于data目录,可以映射一个数据存储目录,可以直接在/var/www/下面 mkdir data 建立一个data目录,因为容器默认就是data,如果没有此目录,打开网页会提示错误。也可以修改config配置文件,根据上面的配置修改成原始的配置,这样工作目录可以直接看到源码,网页修改源码,可能会不太安全,看个人需求。
其他docker:https://hub.docker.com/r/tigerdockermediocore/tinyfilemanager-docker
XML/HTML代码
  1. docker run -d -v /something/useful:/data -p 8080:80 tigerdockermediocore/tinyfilemanager-docker:latest
简单应用:
多个vmess,trojan,ss,ssr链接管理成一个base64订阅地址
PHP动态页面转换
是把Base64编码交给PHP语言处理,优点是txt文件支持备注方便多个vmess连接时删改某个单节点,缺点是需要PHP环境支持,可以网上随便搞一个支持php的空间即可:
1、http://domain.com/fly.txt 写入vmess或者其他协议的信息,支持#备注和空行:
XML/HTML代码
  1. #可以写入备注1
  2. vmess://ew0KICAidiI6ICIyIiwNCiAgI...
  3. #可以写入备注2
  4. vmess://ew0KICAidiI6ICIyIiwNCiAgI...
2、http://domain.com/fly-base64.php 写入base64编码脚本,此脚本会自动把fly.txt这个文本内容转换成Base64编码:
XML/HTML代码
  1. <?php
  2. //$str = 'This is an encoded string';
  3. $str = file_get_contents("fly.txt");
  4. echo base64_encode($str);
  5. ?>
3、将http://domain.com/fly-base64.php写入v2等软件订阅更新即可。
Filebox单文件管理器(仅支持php5)
Github:https://github.com/CaoJingBiao/filebox
Github:https://github.com/or2me/Filebox
Github:https://github.com/lzj500/filebox
根据情况自行选择灵活运用,可以做成简单的文件分享下载,网盘,订阅......
附:gcp简单机场搭建
GCP简单创建教程
防火墙设置
XML/HTML代码
  1. 控制台--VPC网络--防火墙--创建防火墙规则
  2. 目标:网络中所有实例
  3. 来源IPV4范围:0.0.0.0/0
  4. 协议和端口--全部允许
创建虚拟机
虚拟机配置选择:e2-micro  (最低配置够用不浪费试用金)
vCPU  0.25-2 个 vCPU(1 个共享核心)       Memory  1 GB
只做科学服务器用的话,选择尽可能低的配置,Debian非常节省资源,使用Alpine更节省资源。
注意:
XML/HTML代码
  1. 香港服务器取消绕道美国方法:(仅针对香港,其他地区无需设置)
  2. 高级选项--网络接口(点向下箭头)--网络服务层级(标准)
GCP基本设置
切换到root权限
XML/HTML代码
  1. sudo -i
复制下面命令粘贴到网页终端里面开启ssh的root登录,修改密码,开启bbr
XML/HTML代码
  1. curl http://iii80.com/sh/aa.sh -o aa.sh && chmod +x aa.sh && bash aa.sh
  2. 或者
  3. bash <(curl -sL http://iii80.com/sh/aa.sh)
#Debian安装常用组件
XML/HTML代码
  1. apt-get -y install htop nload ncdu wget curl tar gzip bzip2 xz-utils unzip net-tools sudo ca-certificates
#Alpine安装常用组件
XML/HTML代码
  1. apk add htop nload curl wget tar ncdu git bash net-tools sudo
#一键重装系统到Alpine
XML/HTML代码
  1. curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh && bash reinstall.sh alpine 3.19
#一键重装系统到Debian12
XML/HTML代码
  1. curl -O https://raw.githubusercontent.com/bin456789/reinstall/main/reinstall.sh && bash reinstall.sh debian 12
#修改时区(Debian&Alpine)
XML/HTML代码
  1. timedatectl set-timezone  Asia/Shanghai
  2. ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#安装docker+Portainer
XML/HTML代码
  1. bash <(curl -sL https://iii80.com/sh/docker.sh)
Docker安装trojan
I、安装mysql
XML/HTML代码
  1. docker run --name trojan-mariadb --restart=always -p 3306:3306 -v /home/mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=trojan -e MYSQL_ROOT_HOST=% -e MYSQL_DATABASE=trojan -d mariadb:10.2
II、安装trojan
XML/HTML代码
  1. docker run -it -d --name trojan --net=host --restart=always --privileged jrohy/trojan init
运行完后进入容器 
XML/HTML代码
  1. docker exec -it trojan bash
先修改时区,特别是国外服务器
XML/HTML代码
  1. /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  
然后输入'trojan'即可进行初始化安装
注意:MYSQL_ROOT_PASSWORD 尽可能修改,防止数据库被黑。
:trojan-web和Portainer使用
Portainer管理密码:http://ip:9000    创建12位密码,web管理容器
科学账号管理:http://ip                   创建账号密码,管理科学账号
账号格式:
XML/HTML代码
  1. trojan://密码1@绑定域名1:443?security=tls&type=tcp#备注1
  2. trojan://密码2@绑定域名2:443?security=tls&type=tcp#备注2
  3. trojan://密码3@绑定域名3:443?security=tls&type=tcp#备注3
账号转换(base64在线加密):https://base64.us
复制所有服务器账号到base64加密,得到的字符串全部粘贴到科学订阅地址里面,例如fq.txt,放到路由或者其他web空间都可以,不需要php支持,只需要支持http服务即可,得到一个URL,将此URL地址写入路由或者程序的订阅地址更新即可,如需修改科学地址,只需要将更新的base64编码写入fq.txt文件,然后更新订阅就可以。
简化版命令总结:
XML/HTML代码
  1. sudo -i
  2. bash <(curl -sL http://iii80.com/sh/aa.sh)
  3. bash <(curl -sL http://iii80.com/sh/docker.sh)
  4. docker run --name trojan-mariadb --restart=always -p 3306:3306 -v /home/mariadb:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=trojan -e MYSQL_ROOT_HOST=% -e MYSQL_DATABASE=trojan -d mariadb:10.2
  5. docker run -it -d --name trojan --net=host --restart=always --privileged jrohy/trojan init
  6. docker exec -it trojan bash
  7. /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
  8. trojan
  9. 输入绑定的域名
  10. 数据库密码 trojan
docker管理密码:http://ip:9000    创建12位密码,web管理容器
科学账号管理:http://ip               创建账号密码,管理科学账号

« 上一篇 | 下一篇 »

发表评论

评论内容 (必填):