【问题标题】:fileupload error - Internet Explorer cannot display the webpage文件上传错误 - Internet Explorer 无法显示网页
【发布时间】:2012-06-13 07:04:43
【问题描述】:

我知道这个问题已经在其他帖子中被问过,但所提供的解决方案都无法解决我的问题。

当我上传大于 ~4MB(即大于默认值)的文件时,我收到“Internet Explorer 无法显示网页”错误。 (文件更小没有问题)。

这是我到目前为止所做的:

1) 编辑 webconfig:

<httpRuntime maxRequestLength="20480" executionTimeout="3600" enable="true"/>
<customErrors mode="Off"></customErrors>

<requestLimits maxAllowedContentLength="20000000000" />

2) 更新主机文件 (C:\Windows\System32\drivers\etc\hosts) 以删除行:

:: 1 个本地主机

3) 在 IE、Chrome 和 Firefox 上测试(都有相同的问题)。

4) 尝试使用 IE 的开发人员工具,但不太确定要查找什么。

非常感谢您对此的任何建议/指导!我已经花了将近 2 天的时间,但仍然无法弄清楚。我认为它一定是文件大小问题(因为我加载了较小的文件......)

非常感谢!

【问题讨论】:

    标签: asp.net file-upload web-config filesize httpruntime


    【解决方案1】:

    假设你有文件上传控制如下:

    &lt;asp:FileUpload ID="flUpImg" runat="server"/&gt;

    上传完成后,您通常通过单击按钮将文件上传到服务器。 在那个按钮点击事件检查

    flUpImg.PostedFile.ContentLength

    设 xxxx 为返回值。 记下它并停止调试。 转到 web.config 文件并将以下标记编辑为

    &lt;httpRuntime maxRequestLength="value greater than xxxx"/&gt;

    其中 xxxx 是上传文件的大小。

    【讨论】:

      【解决方案2】:

      还有两件事要看:

      1) 您是否正在运行 UrlScan 或其他一些 IIS 插件?您可以通过选择您的网站并单击 ISAPI 过滤器 来检查 IIS 控制台。如果是这样,请检查它是否也有需要覆盖的上传大小限制:例如,C:\Windows\System32\inetsrv\urlscan\urlscan.ini[RequestLimits]MaxAllowedContentLength=1073741824

      2) 检查您的 global .config 文件:machine.configroot-level web.config,例如C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config(对于运行 .NET 4 的 64 位应用程序)用于 &lt;system.web /&gt;applicationHost.config C:\Windows\System32\inetsrv\config 用于&lt;system.webServer /&gt;,以防其中有任何非标准设置,例如allowDefinition="MachineOnly"allowOverride="false"。我怀疑这不是问题,因为如果是,您可能会在屏幕或应用程序事件日志中看到某种消息;不过,还有其他东西可以在你的清单上打勾。

      【讨论】:

        【解决方案3】:

        我遇到了同样的问题,通过在 system.web 下的 web.config 中添加以下内容得到了解决。

        <httpRuntime maxRequestLength="20480" executionTimeout="3600" enable="true"/>
        

        【讨论】:

          【解决方案4】:

          关键是&lt;httpRuntime&gt; 标签内的maxRequestLength="20480"。它失败了,因为页面拒绝了您正在测试的文件,该文件显然大于 20MB。如果您检查您正在测试的文件,您可能会注意到这一点。

          试着把这个数字设高很多,你会取得一些成功!:

          <httpRuntime maxRequestLength="51200" executionTimeout="3600" enable="true"/>
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2012-01-11
            • 2012-08-20
            • 2011-09-23
            相关资源
            最近更新 更多