ファイルへのリンクをすべて含むチェックボックスがたくさんあるphpフォームがあります。ユーザーが必要なチェックボックス (ファイル) をクリックすると、ファイルが圧縮され、ダウンロードが強制されます。
簡単な php zip 強制ダウンロードが機能するようになりましたが、ファイルの 1 つが巨大な場合、または誰かがリスト全体を選択して圧縮してダウンロードすると、サーバーでエラーが発生します。
サーバーのサイズを増やすことができることは理解していますが、他に方法はありますか?
ファイルへのリンクをすべて含むチェックボックスがたくさんあるphpフォームがあります。ユーザーが必要なチェックボックス (ファイル) をクリックすると、ファイルが圧縮され、ダウンロードが強制されます。
簡単な php zip 強制ダウンロードが機能するようになりましたが、ファイルの 1 つが巨大な場合、または誰かがリスト全体を選択して圧縮してダウンロードすると、サーバーでエラーが発生します。
サーバーのサイズを増やすことができることは理解していますが、他に方法はありますか?
PHP を通過するために本当に必要な場合は、ストリームを使用することをお勧めします。ストリームの場合、メモリ要件は非常に低く、コンテンツのサイズに合わせて大きくなりません。
このスレッドが役立つ可能性がありますLAMP: How to create .Zip of large files for the user on the fly, without disk/CPU thrashing
Web サーバー/php レベルで gzip をオンにして、PHP スクリプトで圧縮をスキップできます。次に、呼び出しの間に正しい zip ファイル ヘッダーを出力するだけreadfile()
です。