网站的上传功能也是一个非常容易被攻击的入口,所以对上传功能的安全检查是尤其必要的。

系统的think\File提供了文件上传的安全支持,包括对文件后缀、文件类型、文件大小以及上传图片文件的合法性检查,确保你已经在上传操作中启用了这些合法性检查

为了方便版本升级,并且保证public目录为唯一的web可访问目录,资源文件可以放到项目之外,例如项目目录为

/home/www/thinkphp/

那么资源目录、上传文件保存的目录

/home/www/resource/
/home/www/resource/upload/

为了项目的可维护性,目录操作最好不超出本项目的根目录,所以需要把resource目录映射到根目录

ln -s /home/www/resource/  /home/www/thinkphp/resource/

如果上传文件也需要web访问,可以生成一个软连接到public

ln -s /home/www/thinkphp/resource/upload/  /home/www/thinkphp/public/upload/