FP10 hangs uploading to .htpasswd protected directory.

Flash Player 10에서 .htpasswd를 사용하여 보호되는 디렉토리로 파일을 업로드하는 경우, 플래시 플레이어가 다운되는 문제가 발생합니다. 이 문제는 특히 FireFox에서 더 심각하여, FireFox에서는 아예 업로드가 불가능합니다. Flash Player 9에서도 비슷한 문제가 있었지만, 재차 업로드하면 되었으나, 10에선 아예 안됩니다.

재현1

  1. “Upload” 버튼 클릭하여 이미지 업로드
  2. 로그인 (test / test)
  3. 업로드 중지됨
  4. 브라우저 종료하면 브라우저 다운

재현2 (Internet Explorer)

  1. “Load” 버튼 클릭하여 이미지 로드
  2. 로그인 (test / test)
  3. 이미지 로드 완료되면 화면에 표시
  4. “Upload” 버튼 클릭하여 이미지 업로드
  5. 이미지 업로드 완료

재현2 (FireFox)

  1. “Load” 버튼 클릭하여 이미지 로드
  2. 로그인 (test / test)
  3. 이미지 로드 완료되면 화면에 표시
  4. “Upload” 버튼 클릭하여 이미지 업로드
  5. 로그인 (test / test). 로그인 팝업의 UI가 2번의 UI와 다름.
  6. 업로드 중지됨
  7. 브라우저 종료하면 브라우저 다운

이 문제를 피하려면, Flash Player에서 파일을 업로드하는 PHP 파일은 .htpasswd의 영향을 받지 않는 폴더에 위치하여, 로그인 과정이 없이 파일의 업로드가 이뤄지도록 해야 합니다. 또는 IE에서만 업로드가 가능하도록 하며, 업로드 전에 로그인을 거치도록 구성할 필요가 있습니다.

IE와 FF를 제외한 다른 브라우저에서는 테스트를 해보지 못했습니다. 다른 브라우저를 사용하는 사람들은 한 번 테스트 후에 결과를 코멘트에 남겨 주세요.

Flash Player 10 hangs when you upload a file to a directory protected with the .htpasswd feature. This is more critical in FireFox, uploading a file is impossible. The same problem occured in Flash Player 9, but you can upload files in the second try. In FP10, you can’t.

reproduce1

  1. Click “Upload” button to upload an image.
  2. Login. (test / test)
  3. Uploading process halts.
  4. Close the browse, and it crashes.

reproduce2 (Internet Explorer)

  1. Click “Load” button to load an image.
  2. Login. (test / test)
  3. After the loading finished, the image displayed.
  4. Click “Upload” button to upload an image.
  5. Uploading process finished successfully.

reproduce2 (FireFox)

  1. Click “Load” button to load an image.
  2. Login. (test / test)
  3. After the loading finished, the image displayed.
  4. Click “Upload” button to upload an image.
  5. Login (test / test). The UI of the Login popup is different from the procedure 2.
  6. Uploading process halts.
  7. Close the browser, and it crashes.

To avoid the problem, place the PHP file, that handles the uploaded file from Flash Player, on a directory which is not affected by .htpasswd. Or filter browsers to accept only IE, then, put the login process before upload a file.

I tested in IE and FF. If you tested in other browser, please leave a comment about the result.

Flash Player 10で .htpasswdを使って保護されているフォルダにファイルをアップロードする場合、Flash Playerがクラッシュする問題があるんです。これはFireFoxでもっとひどくて、FireFoxではファイルのアップロードが不可能です。Flash Player 9も同じ問題があったが、再びアップロードすればできたのに、10は全然ダメ。

再見1

  1. “Upload”ボタンをクリックして、イメージをアップロード。
  2. ログイン (test / test)
  3. アップロードが中止される。
  4. ブラウザを閉じると、クラッシュ。

再見2 (Internet Explorer)

  1. “Load”ボタンをクリックして、イメージをロード
  2. ログイン (test / test)
  3. ロードが終わったら、イメージが表す。
  4. “Upload” ボタンをクリックして、イメージをアップロード。
  5. アップロード終了。

再見2 (FireFox)

  1. “Load”ボタンをクリックして、イメージをロード
  2. ログイン (test / test)
  3. ロードが終わったら、イメージが表す。
  4. “Upload” ボタンをクリックして、イメージをアップロード。
  5. ログイン (test / test). ログインウィンドーのUIが2番目と違う。
  6. アップロードが中止される。
  7. ブラウザを閉じると、クラッシュ。

もの問題を回避する為には、Flash PlayerからファイルをアップロードするPHPファイルを.htpasswdの影響のないフォルダに置く。他にはIEだけでアップロードが出来るようにし、アップロードの前にログインさせる必要があります。

私はIEとFFしかテストして見ました。他のブラウザでテストした方は、コメントを残してください。

10 thoughts on “FP10 hangs uploading to .htpasswd protected directory.”

  1. RSS 를 통해서 좋을 글 항상 보고 있습니다.
    헌데 오늘은 등록된 글이 한 / 영 / 일 로 나와서 깜짝 놀랐습니다.
    국어도 잘 못하는 저로서는 대단해 보이기만 합니다~

  2. 안녕하세요 ^^
    그냥 좀 글로벌하게 놀아보자는 생각으로 영어로도 쓰고, 일어는 취미로 하다보니 하게됐고… 그러다보니 블로그에 글쓰는 것도 약간은 스트레스가 되네요. 먼저 한국어로 쓰면서 부터 번역할 것을 미리 염두에 두고 쉽게쉽게 써야 하니까요. 이렇게 라도 해야 공부를 좀 하게 되는것 같아요. 사전 한 번이라도 더 찾아 보게 되니까요.
    그런데 막상 영어나 일어 잘하는 사람이 와서 보면, 말도 안되는 소리도 많을 거에요. ㅎㅎ

  3. 음…조금 이야기가 이상한 것같아요.
    플래시로 디렉토리에 업로드를 한다는건 불가능한데….

    플래시로 서버의 페이지(php,jsp,java, 등등)에 데이터를 전달하는 것이겠죠? 그리고 그 서버 페이지의 디렉토리가
    말씀하신 htpasswd를 이용해 HTTP 인증을 통과해야만 사용할 수 있도록 한 것이고요. 맞죠?

    문제는 HTTP기본인증(HTTP Basic Authentication) 방식이 적용되었을 때 문제가 발생할 여지가 있군요..
    좋은 정보네요 ^^)/

    이런 경우 브라우저가 띄우는 로그인창을 이용하는 방식보다..
    직접 로그인을 할 수 있도록 플래시에서 컨트롤하고 인증을 마치면 인증 정보와 함께
    데이터를 전송하는 방식을 사용해야 겠네요.

    좋은 하루 되세요.. RSS보다가 ^^; 관심이 가는 글이라 들렸습니다가 댓글 남기고 가요 ^^;

    1. 네, 말씀하신대로 FileReference 객체를 통해서 PHP 등 서버스크립트 파일로 전송하는 것입니다. 그리고 해당 서버스크립트 파일이 .htpasswd로 인해서 인증을 하도록 된 것이고요. 플래시 플레이어 9까지는 그래도 업로드하고, 로그인하고, 재차 업로드를 해야 하긴 했지만, 다운되거나 하는 문제는 없었는데, 10에서는 다운되어 버리는 문제가 발생하네요.
      플래시 플레이어의 수정이 이루어지기 전까지는 어쩔수 없이, PHP 파일은 HTTP인증을 받지 않는 디렉토리에 위치히키고, 플래시에서 직접 권한체크를 통해서 업로드 하도록 구성해야 할 것 같습니다.

    1. 제 홈페이지에 관리자 페이지를 개발하면서 PHP로 권한체크를 하려니 너무 귀찮아서 찾아낸 방법이 .htaccess와 .htpasswd를 사용하는 것이지요. 그런데 플레이어 10에서 이런 문제가 있더군요.
      어도비에서 아무런 리액션이 없길래 걍 체념했는데, 열이아빠님이 홍보해 주셔서 관심을 받을 수 있을듯 하네요.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다