允许ZIP文件上传时需要考虑哪些困难/问题?

我允许将PDF文件上传到我的网站(PHP)。 我想提供允许在目录中包含PDF文件的.zip文件的功能,这样用户就可以更轻松地压缩目录并上传一个文件,而不是单独上传多个zip文件。 对于那些为您的(PHP)网站提供.zip文件上传功能的人,您遇到的技术,安全和其他问题是什么?     
已邀请:
小心你如何打开拉链包,你会发现自己消耗的资源远远超出预期。在打开包装之前,也许有些
setrlimit(2)
资源限制是明智的。
unzip(1)
实用程序内置了几个很好的安全功能;
-^
命令行选项关闭控制字符过滤,所以请确保你不要触摸这个:)并且
-:
命令行选项允许st4ѭ这样的愚蠢路径名。确保您至少使用版本5.50,以便默认情况下禁止这些愚蠢的路径名。 (并且不要使用该命令行选项。我提到了这些选项,以便您可以更轻松地找到它们的文档。:) 如果您使用API​​,请确保它具有防止这两种愚蠢文件名的选项。     
假设.zip最终解压缩,你必须确保客户端浏览器无法访问它们解压缩的目录(使用.htaccess或将其放在Web根目录之外),即使在那种情况下,我也是仍然监视解压缩.zip的内容,以确保它们不包含任何可能有害的东西(php或服务器运行的其他文件,html欺骗)。 另一个问题是我想在php.ini中设置
upload_max_filesize
,你可以确保在开始编码之前它可以设置得足够大以适合你的目的。 编辑:也读sarnold的答案;)     
AFAIK,php可以非常有效地处理zip文件。我能想到的困难/问题是,在访问我们需要先提取zip的文件时,然后检索实际需要的文件。由于这个原因,提取zip可能会消耗额外的服务器时间,具体取决于文件本身的大小。 As,在上传期间,我不认为在
zip
类型上有任何特别强调的困难或问题。     

要回复问题请先登录注册