网站上传文件需注意的几点
来源:本站    日期:2015-5-23 17:52:27

1.如果使用的是基于Windows的机器,通常情况下,必须确保在文件路径中用“\\”或“/”代替“\”。

2.如果文件上传脚本的运行出现问题,请检查PHP配置文件。需要将upload-tmp-dir指令设置成指向有访问权限的目录。如果要上传大文件,同时可能还需要调整memory-limit指令;该指令决定能够上传的最大文件字节数。Apache还有一些可配置的超时设置和事务大小限制,如果在上传大文件时遇到问题,可以考虑检查这些设置。

3.如果允许不信任的或者没有通过身份验证的用户上传文件,就必须对文件的内容作出严格的规定。我们最不希望出现的是上传和运行恶意的脚本。应该非常小心,不仅是文件进行命名。

4.就向我们以上脚本所做的,使用用户提供的文件名称可能会导致一系列的问题。最明显的问题就是如果上传的文件名称已经存在,可能会意外的覆盖已有文件。还有一个不是非常明显的风险是不同的操作系统,甚至是本地的不同语言设置将文件名称中包含不同的合法字符集。对于一个被上传的文件来说,其文件名称可能包含了对系统来说是非法的字符。

5.我们要采取措施控制上传的文件,不应该让任何人都能上传文件。这样有助于网站的安全性。

6.要降低用户“浏览Web服务器目录”的风险,你可以使用basename()函数来修改所接收文件的名称。这个函数将过滤作为文件名称一部分而传入的目录路径,这是在服务器的不同目录下防止文件的常见攻击手段。