我的网站希望用户上传他们的photos...but如何保护我们的服务器不受伤害?只允许JPG可以避免病毒问题,但是如果有人选择了一个10 if的文件-这会减慢整个网站的速度吗?
我们使用的是Classic ASP和IIS6 (对不起,但这就是它的方式,不能改变它!)在此之前,我们使用了一家名为Persits的公司提供的DLL来处理上传。但是,如果我们将这个讨论扩展到其他语言/技术,对其他人也会有帮助。
在完成上传之前,ASPs无法检测到文件的大小,因此这是一个痛苦的问题。或者,我可以在开始传输之前检查HTTP报头中的content-length吗?
Q1。有没有其他方式可以让人滥用上传功能?
Q2。如何限制危险以保持站点的运行和服务器的安全?
谢谢。
发布于 2009-04-24 16:21:34
在Persists中,您可以设置用户可以上载的最大文件大小:
Upload.SetMaxSize 100000, True上面的"True“显示如果超过最大大小,文件将被拒绝。如果设置为False,则将传输该文件。
请参阅http://www.aspupload.com/object_upload.html#SetMaxSize
发布于 2009-04-24 16:41:31
如果您使用的是ASP.Net,您可以在web.config (或machine.config)中指定文件的最大大小,并且ASP.Net将在上传超过该大小后抛出错误。也就是说,如果您指定的限制是4Mb,而有人试图上传100Mb,那么一旦上传超过4Mb,.Net就会抱怨。
有问题的属性是maxRequestLength,,它遵循MSDN“以KB为单位指定输入流缓冲阈值的限制。此限制可用于防止拒绝服务攻击,例如,用户将大文件发布到服务器。”
例如。
<configuration>
<system.web>
<httpRuntime maxRequestLength="4000" ....不过,我不确定在经典的ASP中是否有类似的东西。
发布于 2009-04-24 16:06:48
有一个很棒的组件,它使用Flash上传文件。看看这个
http://www.codeproject.com/KB/aspnet/FlashUpload.aspx
https://stackoverflow.com/questions/786507
复制相似问题