增加iis6中的文件上载大小限制

时间:2008-12-20 21:47:53

标签: .net iis-6 file-upload uploading

除了metabase.xml文件之外还有其他地方可以修改文件上传大小吗?

我目前正在运行一个带有IIS6的登台服务器,它的设置允许上传最大20mb的文件。这完全没问题。我有一个新的生产服务器,我试图设置相同的可用大小限制。所以我编辑了metabase.xml文件并将其设置为20971520.然后我重新启动了IIS,但是没有用。所以我然后重新启动整个服务器,这也没有用。我可以上传2mb左右的文件,因此它绝对允许文件大小超过标准的200kb默认大小。我尝试上传5mb文件,我的upload.aspx页面完全崩溃。是否有可能需要配置其他东西?生产服务器位于服务器场上,是否可以设置一些限制?

谢谢

4 个答案:

答案 0 :(得分:35)

我会将你的答案扩展到你的问题,以考虑其他可能的情况。

了解上传大尺寸文件的一个非常好的链接就是这个: http://weblogs.asp.net/jgalloway/archive/2008/01/08/large-file-uploads-in-asp-net.aspx

Jon Galloway在这里解释了解决问题的最佳技巧:

1.更改机器配置或web.config:

<system.web>
  <httpRuntime executionTimeout="240" maxRequestLength="20480" />
</system.web>

在这里,您不仅要更改maxRequestLength,还必须为executionTimeout提供更多秒。

有趣的事情:请考虑在调试模式下忽略此设置的值。 .NET Framework 2.0中的默认值为110秒。在.NET Framework 1.0和1.1中,默认值为90秒。

2.-谈论真正的解决方案,HttpModules就像是免费的NeatUpload

3.-更直观地解释另一种上传方式:Silverlight或flash swfupload

4.-他谈到II7的一个限制。在此页面http://www.telerik.com/help/aspnet-ajax/upload_uploadinglargefiles.html中,您可以找到更多有趣的IIS 7设置,最多可设置100兆兆。 你添加:

 <system.webServer>
...
   <security >
     <requestFiltering>
       <requestLimits maxAllowedContentLength="1024000000" />
     </requestFiltering>
   </security>
</system.webServer> 

您必须打开文件C:\ Windows \ System32 \ inetsrv \ config \ applicationHost.config并找到该行:

<section name="requestFiltering" overrideModeDefault="Deny" />

更改为:

<section name="requestFiltering" overrideModeDefault="Allow" />

Galloway提到的另一个有趣的事情是:“在ASP.NET 1.0和1.1中,整个文件在写入磁盘之前已经加载到内存中。在上载过程中,ASP.NET 2.0将文件流式传输到磁盘上有所改进。 “

对于IIS6,Chris认为解决方案是合适的:

http://www.banmanpro.com/support2/File_Upload_limits.asp

另一个来源:

http://www.telerik.com/support/kb/aspnet-ajax/upload/page-not-found-error-when-uploading-large-files-on-win2003.aspx


另一个网址,其中一位用户在此处测试了很多组件:

http://remy.supertext.ch/2008/01/file-upload-with-aspnet/

他引用了一个codeproject项目(!),这是另一个在这里使用大文件和flash的非常好的例子:

http://www.codeproject.com/KB/aspnet/FlashUpload.aspx

答案 1 :(得分:6)

如果您使用的是ASP .NET,则需要修改 maxRequestLength web.config属性。

请参阅this link

答案 2 :(得分:2)

我一直在努力解决这个问题几个小时,最后解决了我的特殊问题,我想在这里分享。

如果您使用urlscan,则其配置中也存在文件大小限制。要对其进行更改,您需要编辑位于(通常)的文件“UrlScan.ini”:

C:\窗口\ system32 \ INETSRV \ URLScan的

将“ MaxAllowedContentLength ”的值更改为所需的最大文件大小值。

答案 3 :(得分:0)

如果您要从rad-control上传文档,那么就可以使用这行代码。

RadFileExplorer1.Configuration.MaxUploadFileSize = 2000 * 1024; 

它对我有用。