13

Internet Explorer には 4 GB (IE6 では 2 GB) のファイル ダウンロード制限があります。Firefox にはこの問題はありません (サファリはまだテストしていません) (詳細はこちら: http://support.microsoft.com/kb/298618 )

ユーザーが非常に大きなファイル (最大 100GB およびそれを超える) をダウンロードできるサイトに取り組んでいます。

FTP を使用せずにこれを行う最善の方法は何ですか。エンド ユーザーは、HTTP を使用してブラウザからファイルをダウンロードできる必要があります。私が知る限り、Flash や Silverlight がファイルをクライアントに保存できるとは思えません。

これを実現するには、ActiveX または Java アプレットが必要になると思います。MSDN が使用するダウンロード マネージャーのようなもの。

それを行う商用(または無料)コンポーネントを知っている人はいますか?ユーザーが「ブラウザー全体」のダウンロード マネージャー (GetRight など) をインストールする必要はなく、サイトでのダウンロードのみで機能するようにしたいと考えています。

更新:ここに、私がやろうとしていることを明確にするのに役立つ追加情報があります。4GB の制限を超えるファイルのほとんどは、大容量の HD ビデオ ファイルです (ビデオ編集会社向け)。これらはインターネット経由でユーザーによってダウンロードされますが、これはローカル ネットワーク上のユーザーではありません。HTTP 経由でファイルを利用できるようにしたいと考えています (FTP や Bittorrent などを許可しないファイアウォールの内側にいるユーザーもいます)。これは、エンド ユーザーがダウンロードできるファイルのライブラリになるため、1 回限りの大きなダウンロードについては説明していません。は、半定期的にさまざまな大きなファイルをダウンロードします。

これまでのところ、@ Edmund-Tay が提案した Vault が最も近い解決策です。唯一の問題は、4GB を超えるファイルでは機能しないことです (ダウンロードを開始する前に即座に失敗します。おそらく、ファイルのコンテンツの長さによって超過またはオーバーフローする 32 ビット整数を使用している可能性があります)。

問題は IE にのみ存在するため、@spoulson がリンクしている記事のように機能するため、最善の解決策は Java アプレットまたは ActiveX コンポーネントです。ただし、これまでのところ、そのようなことを行うソリューション (マルチパート ダウンロード、再開など) を見つけることができませんでした。

自分で書かなければならないようです。もう 1 つのオプションは、拡張子または MIME タイプに関連付けられた .Net アプリケーション (おそらく ClickOnce) を作成することです。次に、ユーザーは実際に Web サーバーから小さなファイルをダウンロードし、それが exe/ClickOnce アプリで開き、ダウンロードするファイルをアプリケーションに指示します。これが MSDN ダウンローダーの仕組みです。エンド ユーザーは、EXE を 1 回ダウンロード/インストールするだけで済みます。これは、大きなファイルをダウンロードするたびに exe をダウンロードするよりも優れています。

4

15 に答える 15

7

@レバンド:

ユーザーとしての私の実際の好みは、これらの状況でファイルをダウンロードする軽量の .exe ファイルをダウンロードすることです。

これは、非常に多くのサイトにとって大きな問題です。ユーザーは、Web サイトから .exe ファイルをダウンロードして勝手に実行することを非常に嫌がる、または嫌がるはずです。彼らが常に慎重であるとは限りませんが、不注意な行動は責任ある開発者として奨励すべきものではありません。

企業のイントラネットに沿った作業をしている場合、.exe は潜在的に問題のないソリューションですが、パブリック Web の場合はどうでしょうか? とんでもない。

@トニーB:

FTP を使用せずにこれを行う最善の方法は何ですか。

申し訳ありませんが、なぜ必要なのかを尋ねなければなりません。あなたの質問は、「肉や熱源を使わずにステーキを調理する最良の方法は何ですか?」という行に沿って私に読まれます. FTP は、この種のことのために設計されました。

于 2008-08-29T20:59:55.170 に答える
6

ビットトレント?

すでにいくつかの Web ベースのバージョン ( bitletw3btorrent ) があり、Azureusは Java を使用して構築されているため、確実に可能です。

編集: @TonyB はポート 80 に制限されていますか?

于 2008-08-29T20:35:39.220 に答える
4

ActiveX は使用しないでください... IE でしか表示できないサイトにはうんざりです。

ユーザーとしての私の実際の好みは、これらの状況でファイルをダウンロードする軽量の .exe ファイルをダウンロードすることです。

于 2008-08-29T20:38:09.060 に答える
2

ファイルを分割して、ダウンロード後に再度結合できますか?

于 2008-08-29T20:41:19.753 に答える
1

社内で Java コードを書きたくない場合は、市販のアプレット ソリューションを利用できます。

どちらにも、ダウンロードしてテストできる評価版があります。

于 2008-08-30T02:28:23.757 に答える
1

いくつかのアイデア:

  • Blizzard は、パッチに軽量の .exe BitTorrent ラッパーを使用しています。それがどのように行われるのか完全にはわかりませんが、公式の BitTorrent クライアントのブランド バージョンのように見えます。
  • Amazon S3 にアップロードし、ファイルの torrent リンク (すべての S3 ファイルは自動的に BitTorrent 対応) と、代わりに完全な HTTP ダウンロード リンクを提供します。 S3 のドキュメントを参照してください
于 2008-09-03T17:54:33.590 に答える
1

「このファイルをダウンロードするには、 Free Download Managerをインストールすることをお勧めします。ファイルを再開してダウンロードを高速化できるという利点があります。」

個人的には、必要な場合 (Gmail の添付ファイルなど) を除いて、組み込みのブラウザー ダウンロード ツールを使用してダウンロードすることはありません。

于 2009-01-28T14:05:34.047 に答える
0

前述のアプレット アプローチの問題点は、エンド ユーザーに Java セキュリティ プロパティを変更させない限り、アプレットがハード ドライブに保存する権限を持たないことです。

Java Web Start (別名 JNLP)を使用して可能になる場合があります。署名付きアプリであれば、ハード ドライブへの書き込み許可を追加で取得できると思います。これは、exe をダウンロードする方法とあまり変わりません。これに関する問題は、ユーザーが正しいバージョンの Java をインストールし、Java Web Start 機能を正しくセットアップする必要があることです。

技術者以外のユーザーにとって最も簡単に使用できるため、exe アプローチをお勧めします。

于 2008-08-30T00:12:05.363 に答える
0

FTPを許可しない企業のファイアウォールの背後にいるユーザーがいます...

このように制限の厳しいファイアウォールを使用しているユーザーは、Web サイトから .exe ファイルをインストールして実行することを許可される可能性がありますか?

于 2008-09-03T17:36:04.103 に答える
0

cURLを見てください。 この記事では、HTTP 経由で複数の部分を同時にダウンロードする方法について説明します。過去にcURLを使用して、300GBを超えるファイルのFTPダウンロードを管理しました。

もう 1 つのヒント: クライアントの NIC 構成で TCP ウィンドウのサイズを大きくすると、ダウンロード時間をさらに短縮できます。OS が許す限り高く設定すると、物理ネットワークに応じて最大 2 倍の改善が見られるはずです。これは、Windows 2000 および 2003 で WAN 経由の FTP を使用している場合に機能しました。欠点は、ネットワーク パケットに数 KB しか必要としない他のすべてのネットワーク トラフィックのオーバーヘッドが増加する可能性があることですが、現在は 64 KB パケットでの送受信を強制されています。あなたのマイレージは異なる場合があります。

編集:あなたが達成しようとしているこれは正確には何ですか?聴衆は誰ですか?私は、あなたが自分のネットワークを介してこれを行おうとしていることを少し想定しています。しかし、クライアント側がインターネット上の誰かであることを暗示しているようです。より明確な要件が必要だと思います。

于 2008-09-03T18:00:40.190 に答える
0

@トラヴィス

残念ながら、ユーザーのブラウザ内で HTTP 経由でなければなりません。それについてより明確にするために質問を更新します。

于 2008-08-29T20:38:29.200 に答える
0

@levand 問題は IE にのみ存在します (Firefox で動作します)。したがって、ActiveX は IE でのみ動作しますが、回避策が必要なのは IE だけです。

@travis - 興味深いアイデア。必要に応じて機能するかどうかはわかりませんが、覚えておきます。サードパーティに出向くのではなく、既存のサイトと統合する何かを見つけたいと思っています。また、bittorrent トラッカーをセットアップする必要がありますが、このアプリケーションで言うほど簡単ではありません。ユーザーごとに異なるファイルへのアクセス権が異なるためです。

于 2008-08-29T20:50:19.140 に答える
0

@jjnguy 私のためにそれを行う Java アプレットまたは ActiveX コンポーネントを探しています。これらは技術者ではないユーザーなので、ダウンロードをクリックしてもらいたいだけで、完全なファイルが指定された場所に保存されます。

于 2008-08-29T20:57:10.947 に答える
0

@cejayoz

私は完全に同意しますが、それは私たちのクライアントの要件の一部です. FTP アクセスがありますが、各ユーザーは HTTP または FTP 経由でダウンロードするオプションがあります。FTP を許可しない企業のファイアウォールの背後にいるユーザーがいます。

過去に他のサイト(MSDN、Adobe)がこれを行っているのを見たので、社内で作成する(およびJavaやActiveXを学習する)のではなく、すでに何かがあることを望んでいました。

于 2008-08-29T21:03:34.473 に答える
0

msdn に似た、クリック ワンス インストール ダウンロード マネージャーと言います。

しかし、より最適化されたプロトコルなしで CDN になるのは簡単なことではありません。msdn のようなことをしていない限り、これほど大きなファイルのダウンロードをコア コンピテンシーとするほど価値のあるビジネス モデルは想像できません。シック クライアントを作成すると、少なくとも、広告やその他の収益モデルのために、ユーザーと顔を合わせる機会がいくらか得られます。そのようなサービスをホストするには、おそらく数十万ドルを支払うことになるからです。

于 2008-08-29T21:07:34.747 に答える