2014-04-14 96 views
1

我在Windows Server 2012R2上运行IIS 8,并遇到问题。我希望能够托管大型文件,但这会造成问题。如果我在其上放置了大约400MB的内容,那么当我尝试从浏览器访问该文件时,会出现“找不到404文件”错误。无法在IIS网络服务器上托管大文件

我应该注意到较小的文件工作正常。有什么想法吗?

+0

哈?我相信这不会是上传400 MB文件的问题。请检查您是否正确设置了您自己的默认页面。 –

+0

我不太确定我是否理解你的评论。上传文件不是问题,我可以直接访问服务器,并可以将文件直接放入web服务器文件夹。如果我用一个小文件做这件事,那么当你访问URL时,它会显示在服务器的目录列表中,如果你点击它然后会下载,但是如果我用一个大文件做这件事,那么它仍然显示在列表中,但如果我点击它然后显示404. – Jordan

+0

所以当你打开文件的问题?嗯......这很奇怪。你的文件损坏了吗? –

回答

2

的问题可能是你的MIME类型,需要进行修改。从https://serverfault.com/a/78526/12894

什么是可能发生的是,您的服务器不知道的.war 是需要下载,而不是执行的文件类型。它 然后通过您允许的任何 匹配的Web服务扩展运行。如果它没有找到它,即使 文件确实存在,也会抛出404错误。

如果您为应用程序/八位字节流类型的war文件设置了MIME类型,那么应该可以解决您的问题 。

参见Microsoft文章Requests for static files return 404 error (IIS 6.0)

+0

AHA!就是这样。我有足够大的测试文件是.mkv视频文件,它们不是默认的MIME类型。 – Jordan

0

您是否尝试过查看maxrequestlength标记的Web.config文件?这种情况下的问题不是上传,而是加载页面时对文件的请求。寻找以下行:

<httpruntime maxrequestlength="51200" executiontimeout="7200"/> 

当我第二号设置为2小时(只是一个随机的超时时间)和第一个数字是一个网页,需要的文件可以请求的最大文件大小。在这种情况下,您可以拥有500Mb的上传大小。这可以修复它,但是,也可以编辑的另一部分,加入出于安全目的:

<security> 
<requestFiltering> 
<requestLimits maxAllowedContentLength="524288000"/> 
</requestFiltering> 
</security> 

在这里,你又拥有1024×1024×500 = 500MB的。这是在会话属性中编辑的 - 您可以通过管理界面或通过编写自己的脚本来完成此操作。看看MSDN这里:

http://technet.microsoft.com/en-us/library/cc725820(v=ws.10).aspx

+0

我刚刚检查过它,它设置为4GB(或非常接近):4,294,967,295 – Jordan

+0

哎呀,我的坏。谢谢!顺便说一下,这些工作对你有用吗? –

相关问题