2010-07-01 2 views
1

가능한 중복 : 내가 가지고있는
HTML Compress File Upload?업로드 속도가 향상 될 수 있도록 업로드 중 (이전) 100 MB 파일을 압축하는 방법은 무엇입니까?

내 웹 사이트가 100 메가 바이트 시간 (나는 그것이 이것 때문에 시간이 더 걸릴 수 밖에 알을 업로드하는 데 시간이 더 걸리는 클라이언트에서 불평 크기) 따라서 업로드하기 전에 압축되어 원하는 위치에 업로드 된 다음 압축되지 않은 형식으로 업로드 된 파일이 삭제되면서 압축이 풀리도록 파일을 업로드하려고합니다.

아무도 나에게 앞으로 나아갈 방법을 제안 할 수 있습니까?

나는

편집 어떻게 PHP에서이 목적을 위해 Silverlight를 통합 할 수 ... 보통의 파일 업로드 functionalty와의 단지 형태로 파일 업로드에 대한 서투른 코드가없는, PHP를 사용하고?

+1

및 http://stackoverflow.com/questions/1864908/compress-file-before-upload-via-http – Palantir

+0

내가 틀릴 수도 있지만 "Accept-Encoding"또는 " Content-Encoding "을 탐색 해 볼 가치가 있습니다. 나는이 질문을 serverfault.com에도 올릴 것입니다. 전송을 시작할 때 파일을 업로드하는 페이지에 요청 헤더를 설정해야 할 수 있습니다. 'gzip, deflate'를 지원하는 브라우저와'gzip, deflate '를 지원하는 서버가 압축 파일 업로드를 협상 할 수 없다는 사실이 이상하게 들릴 것입니다. – Andrew

+0

또 하나의 아이디어 ... [nochump.com] (http://nochump.com/blog/archives/15)에는 즉시 파일을 압축 및 압축 해제 할 수있는 Adobe Air 라이브러리가 있습니다. 사용자 정의 업 로더를 정당화 할 수있는 클라이언트가 충분하지 않은 경우 좋은 해결책 일 수 있습니다. 그들이 사용하는 것이 간단하고 기존의 모든 서버 측 코드를 그대로 사용할 수 있습니다. – Andrew

답변

2

는 일반 HTML 양식과 PHP 스크립트와 같은 파일을 조작 할 수있는 방법은 없습니다 도와주세요. 브라우저의 샌드 박스를 사용하는 이유 중 하나는 클라이언트의 파일 시스템에 액세스 할 수 없기 때문입니다.

파일에 대한 액세스를 허용 할 수있는 클라이언트에서 Java Applet, Silverlight, Flash 유형 솔루션을 더 많이 탐색하고 싶을 것입니다. 전에 zip 파일은 클라이언트 측에서 수행해야 할 업로드하기 위해

Here's one example using Silverlight

0

. PHP는 서버 측에만 있기 때문에 PHP는 아무 쓸모가 없습니다.

옵션 1 : 고객에게 이미 압축 된 파일을 업로드하도록 요청합니다 (원하는 내용이 아닌 것처럼 보입니다).

옵션 2 : 자바 스크립트 코드로 서버 측 처리를 할 수있는 방법이 필요합니다. 솔직히 말해서 나는 그럴만한 쉬운 해결책이 있는지 의심 스럽습니다. 아마도 zip 데이터 스트림이 작동 할 수도 있지만 스크립트 (f.e. ActiveX)에 대한 특수 권한이 ​​필요합니다. 현재는 날짜 브라우저가 허용되지 않습니다.

+0

분석을위한 고맙습니다 Thariama ... 그러면 감기가 지체없이 100MB 파일을 업로드 할 수있는 가능한 해결책은 무엇입니까? –

+0

하지만 이미 언급했듯이 보안 문제의 새로운 브라우저 원인으로 인해 작동하지 않을지 의심 스럽습니다. 간단한 토론을 위해 여기에서 알았습니다 : http://www.phpbuilder.com/board/showthread.php?t=10316619 – Thariama

관련 문제