2010-01-25 709 views
1

我正在使用通过flash组件上传文件到服务器的脚本。有时,很少,当试图通过Firefox上传图片时,出现以下错误:IO错误#2038。在网上搜索我可以找到为什么它真的发生在我身上。但我发现我的情况的解决方案: 我打开IE6,做同样的事情(照片总是上传没有问题),当我再次尝试Firefox的问题消失。如果有人有类似的问题,也许这会帮助或也许这暗示可能有助于问题:)上传图片问题:IO错误。 (错误#2038)

+1

如果您正在使用MVC,如果你使用'HttpPostedFile'类控制器参数它会导致IO错误。用'HttpPostedFileBase'替换它' – 2012-12-11 13:43:00

回答

0

的人发现的原因如果你没加引号周围的选项名称,尝试这样做。有时在IE中,引用选项名称可以解决问题。如果你发布了一些示例代码,它会有所帮助。

1

后更喜欢比我承认的时候,这里是解决方案。更改以下变量在php.ini到足够大来处理你的最大的文件:

; Maximum size of POST data that PHP will accept. 
post_max_size = 32M 

; Maximum allowed size for uploaded files. 
upload_max_filesize = 32M 

; Whether to allow HTTP file uploads. (this is on by default) 
file_uploads = On 

由于文件作为POST数据发送,第一变量需要进行设置。否则,将会出现错误,但您不会看到错误是什么,除了IO error #2038

+3

我看到了这个解决方案,但是我试图上传的图片都没有大于1MB,所以我不认为这个尺寸是问题所在 – 2010-03-14 10:14:13

1

我只是有这个错误还使用ASP.Net MVC,我发现我有我的处理程序命名错误/在web配置部分,其中的处理器去missspellled。 HTH ...

0

我解决了这个问题。

在我的办公室我使用代理,我必须更改设置,以No Proxy

或者,如果你不使用代理服务器,尝试在php.ini改变:

Hostname:Port localhost:0 

到:

Hostname:Port localhost:80 
0

还要确保正在使用的上传组件的路径服务器正确。如果路径是相对路径,请尝试完全限定它。 IE可以用其他浏览器无法做到的相对路径做一些“魔术”,有时候从一个浏览器到另一个浏览器尝试代码可以调整一些东西。

而且,可能是权限...并具有IE浏览器去那里第一次可以操纵的方式,其他浏览器(S)工作,那么“正确”的权限。