울어라휘파람새야

IE8 에서 첨부파일( "<input type=file>") 사용 시 변경 사항 본문

밥줄/HTML_CSS

IE8 에서 첨부파일( "<input type=file>") 사용 시 변경 사항

꼬꼬리코 2009. 9. 18. 17:16

기본적으로 IE8에서는 로컬 파일을 참조 할 때, 해당 파일의 물리적 경로와는 상관없이 "C:\fakepath\파일명" 이런 식으로 참조한다.
물론 FileUpload에서는 실제 파일을 내부적으로(?) 참조하기 때문에 문제는 없다.

그런데 해당 파일의 경로를 참조해 실행되는 모든 자바스크립트는 작동하지 않는다.
"INVALID_ACCESS_ERR" 라는 오류를 리턴하는데, 실제 "C:\fakepath\파일명" 이런 파일은 없기 때문이다.

이렇게 변경된 이유는 "파일의 경로에 사용자의 이름이나 profile 등의 정보가 포함되어 있을수 있어 보안상의 문제" 때문이라고 한다.
이유는 그럴듯 하긴 한데, 실제 우리가 자주 사용하는 웹애플리케이션에서는 무조건 에러만 발생하고 있으니..ㅡㅡ;

이 문제를 해결하려면 아래와 같이 하면 된다.

-- 아래 --
1. "도구 > 인터넷 옵션" 화면에서 "보안" 탭을 선택한다.
2. "인터넷" 을 선택하고, "사용자 지정 수준"을 클릭한다.
3. 설정 항목에서 "파일을 서버에 업로드할 때 로컬 디렉터리 경로 포함" 항목을 "사용" 으로 설정 한다.
4. "확인"을 클릭하면, "사용자 지정"의 보안 수준으로 변경된다.
5. 적용을 누른 후 IE8을 재시작 한다.

출처 : http://www.maketalk.net/52

Comments