2

以下の問題があります。

a.com、b.com、b1.com などの複数のサーバーがあります。ユーザーは常に a.com にログオンし、b.com、b1.com などのサーバーに存在するファイルを要求します。すべてのフィールドは、「b」で始まる名前のサーバーに存在します。

アプリケーションは b1.com に接続し、ファイルを見つけます。ここで、ユーザーが実際に b1.com からのものであることを知らずに、b1.com からファイルをダウンロードする方法が必要です。ファイルを b サーバーからユーザーのデスクトップ/PC に直接ダウンロードする方法はありますか? または、ファイルが「b」から「a」にダウンロードされている間に、「a」から「user」へのファイル転送を開始できる方法はありますか

ファイルが大きい場合にパフォーマンスに影響を与える転送時間が2倍になるため、最初に完全なファイルをbからaに、次にaからユーザーにダウンロードしたくありません。

これに対する解決策はありますか?? サーバー側でPHPを使用しています。他のソリューションも大歓迎です。

4

1 に答える 1

1

fsockopenを使用するかfopen、bサーバーに接続し、ファイルタイプを示すヘッダーをクライアントに送信してダウンロードをトリガーし、ループで、を使用して一度に8 KBのファイルをダウンロードし、出力バッファリング( )freadを使用して8KBをフラッシュします。ユーザーを入力し、ファイルのダウンロードが完了するまで繰り返します。ob_flush()

また

それをすべて回避するために、Apacheのmod_proxyモジュールの使用を検討することができます。

于 2012-05-31T07:49:22.650 に答える