1.如果使用的是基于Windows的机器,通常情况下,必须确保在文件路径中用“\\”或“/”代替“\”。
2.如果文件上传脚本的运行出现问题,请检查PHP配置文件。需要将upload-tmp-dir指令设置成指向有访问权限的目录。如果要上传大文件,同时可能还需要调整memory-limit指令;该指令决定能够上传的最大文件字节数。Apache还有一些可配置的超时设置和事务大小限制,如果在上传大文件时遇到问题,可以考虑检查这些设置。
佛山网站建设_佛山网站制作_佛山网站设计_佛山网站_佛山网页设计_佛山网页建设_佛山网页制作
3.如果允许不信任的或者没有通过身份验证的用户上传文件,就必须对文件的内容作出严格的规定。我们最不希望出现的是上传和运行恶意的脚本。应该非常小心,不仅是文件进行命名。
4.就向我们以上脚本所做的,使用用户提供的文件名称可能会导致一系列的问题。最明显的问题就是如果上传的文件名称已经存在,可能会意外的覆盖已有文件。还有一个不是非常明显的风险是不同的操作系统,甚至是本地的不同语言设置将文件名称中包含不同的合法字符集。对于一个被上传的文件来说,其文件名称可能包含了对系统来说是非法的字符。
5.我们要采取措施控制上传的文件,不应该让任何人都能上传文件。这样有助于网站的安全性。
6.要降低用户“浏览Web服务器目录”的风险,你可以使用basename()函数来修改所接收文件的名称。这个函数将过滤作为文件名称一部分而传入的目录路径,这是在服务器的不同目录下防止文件的常见攻击手段。