在ASP.NET应用程序中,用户很难尝试上传文件。 该应用程序可由大约30人通过1Mb光纤专用线路访问服务器。
文件上传实现似乎没有问题,因为问题不会偶尔经常发生。我已经尝试上传更大的文件(最多50 Mb),我没有任何问题。
所以我认为问题必须在网络连接上,有些日子必须有某种带宽问题。
如何有效诊断问题的根本原因?
感谢。
答案 0 :(得分:1)
您是否记录了例外情况?记录ASP.NET的模块
如果不能查看Web服务器事件日志。
错误可能会导致Web服务器的上传限制和安全问题。
答案 1 :(得分:0)
fileupload模块中充满了许多try catch块,因此log4net日志文件中显示的消息是开发人员提供的错误消息。在逐步尝试重现问题之后,我们得到了一个错误消息来自系统的部分“文件无法保存,因为它超出50个字符”,但文件大约是40个字符。开发人员在文件名上使用函数Server.HTMLEncode将名称存储在数据库中,但是当文件具有特殊字符时,由于文本编码,文件名有时会超过50个字符。解决方案是通过某些字符增加文件名的大小,并且在验证文件名时,我们使用HTML.Encode长度进行验证,并警告用户减少超出x的字符数以使文件有效。