「upload_max_filesize」がファイル サイズより大きいにもかかわらず、ファイルのアップロードが失敗するのはなぜですか?

Linda Hamilton
リリース: 2024-10-29 04:20:29
オリジナル
919 人が閲覧しました

Why Does My File Upload Fail Even Though `upload_max_filesize` is Higher Than My File Size?

PHP: post_max_size が Upload_max_filesize をオーバーライドします

最近の問い合わせで、あるユーザーは、post_max_size 設定がファイルのサイズを制限しているように見えるという複雑な問題に遭遇しました。

質問:

次の PHP.ini 設定があるとします:

post_max_size = 8Mb
upload_max_filesize = 16Mb
ログイン後にコピー

なぜユーザーは POST メソッド経由で 16Mb ファイルをアップロードできませんか?

回答:

理解すべき重要な違いは、upload_max_filesize がリクエスト内の個々のファイルのサイズを制限することです。一方、post_max_size は、POST データやアップロードされたファイルを含む HTTP リクエスト本文全体の合計サイズを制限します。

このシナリオで、ユーザーが 16 MB のファイルをアップロードしようとすると、次のようになります。

  • Upload_max_filesize では、ファイルが 16Mb 未満であるためアップロードできます。
  • ただし、リクエスト本文の合計サイズが post_max_size 制限の 8Mb を超えているため、リクエストは拒否されます。

より大きなファイルのアップロードに対応するために、ユーザーにはいくつかのオプションがあります。

  • post_max_size を増やす: より大きなリクエスト本文を許可するように PHP.ini 設定を調整します。
  • チャンク: 大きなファイルを、順次アップロードできる小さなチャンクに分割します。
  • Multipart/form-data: リクエストに multipart/form-data エンコーディングを使用します。これにより、post_max_size に制限されずにファイルをアップロードできます。

以上が「upload_max_filesize」がファイル サイズより大きいにもかかわらず、ファイルのアップロードが失敗するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート