无法在asp.net中下载包含'aspx'字符的文件名

时间:2014-05-20 07:21:26

标签: asp.net .net generics handler downloading

开发asp .Net Web应用程序。

在我的一个aspx文件中使用通用处理程序下载文件。一切都很好。但是当我测试时,我感到一个奇怪的问题。如果上传一个图像或文件,文件名包含Eg的aspx字符; aspxphoto作为文件名。 上传没有任何问题,但是当我尝试下载时,它会在通用处理程序文件中抛出错误

  

对象引用未设置为对象的实例。

任何人都可以帮助我解决这个问题的原因,我该如何解决?

1 个答案:

答案 0 :(得分:0)

你将无法做到这一点。 IIS处理程序想要"处理" ASPX。您应该不允许它,或者如果必须,将其重命名为.aspx.uploaded或其他东西。如果你允许的话,你就可以打开自己的黑客攻击。

作为另一种选择,您可以创建一个实现的虚拟("无处理") - 可能使用虚拟下的HTTP处理程序并且只是禁用脚本/执行权限(在处理程序>>下) ;编辑功能许可>>脚本或虚拟>>编辑权限>>特殊>>关闭执行。

我不推荐最后一个,因为在测试和实时以及恢复(DR)之间迁移时会增加复杂性。