개발&Development/태터툴즈

Adobe Flash의 FileReferance API 버그

겐도 2006. 5. 19. 21:07
태터툴스를 설치한 후 일부 환경에서 다른 다 잘되는데 파일첨부만 안되는 경우가 있다. 이런 경우 Apache의 Security Module에서 차단을 하는 경우다. 원인은 멍청한 Flash의 FileReferance API 문제.

위의 그림은 업로드를 시도했을때 Flash가 전송하는 Multipart/form-data 영역이다.
RFC1867에 따르면 두가지가 틀렸다. 좌측 부분에서는 헤더와 컨텐트 영역 사이에 빈줄(\r\n)이 없다. 사실 이 부분때문에 Security Module에서 뭔가 이상하다(정확히는 왜 헤더에 콜론이 없냐라고 구박)라고 해서 중간에 컷팅하게 된다. 그리고 우측은 가장 마지막 영역인데 더블하이픈(--)이 없다.

태터툴즈 팁란에도 글을 올리겠지만 해결방법은 다음과 같다.
.htaccess 파일 최상단에 다음을 추가한다.
SecFilterEngine Off
SecFilterScanPOST Off
SecFilterCheckURLEncoding Off
사실 윗 두줄만 있어도 되지만 세번째 라인은 보너스라 할 수 있다. 그리고 되길 빈다. 서버 셋팅에 따라 안될수도 있는 것이다. 그때는 서버 관리자에게 싹싹 빌거나.. 옮길 수 밖에;;;

참고. 태터툴즈 팁