思维导图
见 22安全开发
知识点:
- 11、PHP文件管理-下载&删除功能实现
- 12、PHP文件管理-编辑&包含功能实现
章节点
PHP:
功能:新闻列表,会员中心,资源下载,留言版,后台模块,模版引用,框架开发等
技术:输入输出,超全局变量,数据库操作,逻辑架构,包含上传&下载删除;
技术:JS&CSS混用,Cookie,Session操作,MVC架构,ThinkPHP引用等。
JS:内容筹备中……
Java:内容筹备中……
PHP文件操作安全
-文件包含,文件上传,文件下载,文件删除,文件写入,文件遍历
文件包含:
1 | include() 在错误发生后脚本继续执行 |
文件上传:
1、无过滤机制
2、黑名单过滤机制
3、白名单过滤机制
4、文件类型过滤机制
架构:
1、上传至服务器本身的存储磁盘(源码在一起)
2、云产品OSS存储对象去存储文件(泄漏安全)
3、把文件上传到其他域名,如:www.xiaodi8.com->upload.xiaodi8.com
1 | $_FILES:PHP中一个预定义的超全局变量,用于在上传文件时从客户端接收文件,并将其保存到服务器上。它是一个包含上传文件信息的数组,包括文件名、类型、大小、临时文件名等信息。 |
文件显示:
1.打开目录读取文件列表
2.递归循环读取文件列表
3.判断是文件还是文件夹
4.PHP.INI目录访问控制
1 | is_dir() 函数用于检查指定的路径是否是一个目录 |
文件删除:
1 | unlink() 文件删除函数 |
文件下载:
修改HTTP头实现文件读取解析下载:
1 | header("Content-Type: application/octet-stream"); |
文件编辑:
1 | 1、file_get_contents() 读取文件内容 |