php - 使用 PHP 将图像文件上传到服务器的最安全方法是什么?

标签 php mysql image

我知道这个话题被广泛讨论。我已经完成研究,并决定将图像文件作为 blob 文件存储到服务器上而不是数据库上。我遇到的问题是试图找出上传文件的最佳方式,将其存储在指定的文件夹中,然后将目标存储在 db..say../img/something.jpg - 我试过查看许多资源,但其中大多数都缺少过程中的一些重要步骤。

问题:

  1. 寻找上传 img 文件的安全方式
  2. 限制文件
  3. size 上传图片到目标文件
  4. 将目标文件作为文本存储在数据库中

我正在使用 PHP 和 MySQL。

最佳答案

不知道你所有的观点是什么,但你真正需要关心的是

  • 检查文件扩展名。
    从文件名中提取它并与允许的进行比较。
    由于一些奇怪的 Apache 行为,最好检查文件名是否只有一个点,或者至少它没有像 name.html.jpg 这样的名称。

  • 检查文件内容。最好的方法是从上传的图像中创建一个全新的图像。

  • 在使用 DB 时采取通常的预防措施。

关于php - 使用 PHP 将图像文件上传到服务器的最安全方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8532559/

相关文章:

php - 将 cURL 命令行转换为 PHP

php - Laravel 中间件在路由中不起作用

mysql - 获取给定时间范围内的 MySQL 服务器负载

mysql - MySQL 和 LOAD DATA INFILE 导致 PDO 失败

c - GTK3 调整大小尝试使窗口呈指数增长

javascript - amCharts 不显示 json 数据

javascript - Highcharts 列适合/调整图表

python - 在 Django 中使用 D3js 和 JSON 格式可视化 MySQL 数据

android - React-native:Android 设备中不显示图像;但在模拟器中完美显示

ios - 设置绘制到图像时文本的描边宽度