首页 > 解决方案 > 尝试将数据导入 EPiServer 时出现 400 错误

问题描述

我正在尝试将两个2.6 GB 和 6 GB 的episerverdata文件导入一个没有其他内容的网站,并且只是该网站的源代码。我试图在使用 IIS Express 的本地开发机器上执行此操作。但是,每当我尝试上传任一文件时,文件都会达到 99%,然后显示 HTTP 错误 400 - 错误请求。该错误表示 ASP.NET 在 URL 中检测到无效字符,但我不明白如何考虑它只是一个文件上传,并且文件的名称完全符合 (Pages_ExportedFile)。

我尝试使用我的项目的 web.config 来增加 IIS 的文件上传限制:

我还尝试将站点从 4.5 缓慢升级到 ASP.NET Framework 4.6.1。我现在正在使用 EPiServer 10,尽管我正在尝试将其升级到 11 以查看这是否可以解决问题。

标签: c#iisepiserver

解决方案


maxRequestLength以千字节为单位设置,如果您的文件为 6.0 GB,则它至少应具有值 6291456,

executionTimeout以秒为单位设置,7200 表示两个小时。这应该足够了,我假设您在 system.web 部分中设置了元素,即。

<system.web>
    <httpRuntime executionTimeout="7200" />
</system.web>

maxAllowedContentLength以字节为单位设置,6.0 GB = 6442450944 字节

由于您使用的是 IISExpress,因此存在一些限制

  • 根据您的版本,可能存在实际存储限制
  • 您可能需要调整 applicationhost.config 文件 %userprofile%\Documents\IISExpress\config。根据实现,上面设置的设置也可能适用于 iis 配置,并且超时实际上可能来自 iisexpress 而不是 iis。

推荐阅读