我正在为客户创建一个图片上传系统,用于上传截图/图片。这将通过php和html形式实现。我正在做这件事请告诉我是否错过任何事情......
if-else语句按顺序提供。
- 检查是否为文件和MAX_FILE_SIZE设置了$ _POST。
- 检查是否允许扩展名(允许使用.jpeg / .jpg / .png / .gif文件)。
- 如果扩展名匹配,我们检查它是否为0字节文件。
- 如果它不是0字节文件,则必须小于MAX_FILE_SIZE。
- 如果它的颜色不足MAX_FILE_SIZE,我们检查file_upload(PHP FILE UPLOAD ERRORS)中的任何[错误]
- 之后,我们检查mime-types(允许的mime类型:image / png,image / jpg,image / gif,image / jpeg)
- 在满足上述所有条件后,我们检查exif_imagetype。
- 最后一种情况,如果满足以上条件,则检查图像是否具有最小宽度(300)和高度(100)。
醇>
如果满足以上8个条件,我们使用 move_uploaded_file ,然后使用图像GD重新创建图像(删除任何恶意代码,如果有的话)并将其显示给用户。
这是上传图片最安全的方式吗?我错过了什么?
我只需要最安全,最优的方式上传图片而不影响任何安全性(如果受到损害,速度很快)