2010-01-25 6 views
1

플래시 구성 요소를 통해 서버에 파일을 업로드하는 스크립트를 사용하고 있습니다. 때로는 매우 드물게 Firefox를 통해 이미지를 업로드하려고 할 때 IO 오류 # 2038 오류가 발생합니다. 그물을 검색하면 나는 왜 그것이 정말로 나에게 일어나는 지 이유를 찾을 수 있었다. 하지만 내 경우에 대한 해결책을 찾았습니다 : IE6을 열어 거기에서 똑같은 일을합니다 (사진은 항상 문제없이 업로드됩니다) 그리고 Firefox 문제에서 다시 시도 할 때 사라집니다. 누군가가 비슷한 문제를 가지고 있다면 어쩌면이 힌트가 문제의 원인을 발견하는 누군가에게 도움이 될 수도 있습니다. :)이미지 업로드 문제 : IO 오류. (오류 # 2038)

+1

MVC를 사용 중이고 컨트롤러 매개 변수에 HttpPostedFile 클래스를 사용하면 IO 오류가 발생합니다. 'HttpPostedFileBase '로 바꾸십시오. –

답변

0

옵션 이름에 따옴표를 추가하지 않았다면 그렇게하십시오. 때때로 IE에서 옵션 이름을 인용하면 문제가 해결됩니다. 그래도 예제 코드를 게시하면 도움이 될 것입니다.

1

내가 인정하고 싶은 것보다 훨씬 많은 시간이 지나면 여기에 해결책이 있습니다. 가장 큰 파일을 처리 할 수있을만큼 크게 당신의 php.ini에 다음 변수를 변경 : 파일이 POST 데이터로 전송됩니다

; 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 

때문에, 모두를 첫 번째 변수를 설정해야합니다. 그렇지 않으면 오류가 발생하지만 IO error #2038을 제외하고 오류가 무엇인지 알 수 없습니다.

+3

이 솔루션을 보았습니다. 그러나 업로드하려고 시도한 이미지 중 어느 것도 1MB보다 컸기 때문에 크기가 문제라고 생각하지 않습니다 –

1

방금 ​​ASP.Net MVC를 사용하여이 오류가 발생했으며 처리기 네임 스페이스가 잘못되었거나 처리기가있는 웹 구성 섹션에서 missspellled를 발견했습니다. HTH ...

0

나는이 문제를 해결했다.

내 사무실에서는 프록시를 사용하므로 설정을 No Proxy으로 변경해야합니다.

아니면 프록시를 사용하지 않는 경우, php.ini에 변경하려고 :

Hostname:Port localhost:0 

에 :

또한
Hostname:Port localhost:80 
0

하는 서버의 경로가 업로드 컴포넌트 사용하고 있는지 확인하다 옳은. 경로가 상대 경로이면 완전히 정규화하십시오. IE는 다른 브라우저가 할 수없는 상대 경로로 "마법"을 수행 할 수 있으며 때로는 한 브라우저에서 다른 브라우저로 코드를 시도하여 상황을 조정할 수 있습니다.

또한 권한이있을 수 있습니다. IE를 먼저 설치하면 다른 브라우저가 "올바르게"작동하는 방식으로 권한을 조작 할 수 있습니다.