教程 / PHP 从入门到实战:搭建自己的学习网站 / 第 5 章 文件上传与安全

第 5 章 文件上传与安全

王老师 · 建议学时 55 分钟 · 0% 已完成

5.1 上传校验四步

  1. 校验登录状态与文件大小
  2. 校验扩展名白名单
  3. 用 finfo 校验真实 MIME
  4. 生成随机文件名并保存到 uploads 目录

5.2 防止上传木马

uploads 目录必须禁止执行 PHP。Nginx 中加一条 location ~* ^/uploads/.*\.(php|phtml)$ { deny all; } 即可。

5.3 下载鉴权

文件不要直接暴露真实路径,通过控制器校验权限后读取并输出,或使用 X-Accel-Redirect 交给 Nginx。