ホームページ  >  記事  >  バックエンド開発  >  Upload_max_filesize が post_max_size より大きいときに「最大ファイル サイズを超えました」エラーが表示されるのはなぜですか?

Upload_max_filesize が post_max_size より大きいときに「最大ファイル サイズを超えました」エラーが表示されるのはなぜですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-29 18:38:43451ブラウズ

Why am I getting the

PHP: post_max_size Upload_max_filesize のオーバーライド

PHP 構成パラメーター post_max_size と Upload_max_filesize は、ファイルのアップロードに許可される最大サイズを決定する際に重要な役割を果たします。ただし、これらの値が互いに矛盾しているように見える場合、混乱を招くシナリオが発生する可能性があります。

Simon が報告したように、彼のホストは次の設定を示しました:

  • post_max_size = 8Mb
  • Upload_max_filesize = 16Mb

この情報に基づくと、最大 16Mb までのファイルをアップロードできると考えるのが論理的です。ただし、POST メソッド経由で大きなファイルをアップロードしようとすると、Simon は「最大ファイル サイズを超えました」というエラーが発生しました。

この問題を解決するには、次のパラメータの個別の役割を理解することが重要です。

  • upload_max_filesize: アップロードされる個々のファイルの最大サイズを指定します。
  • post_max_size: を通じて送信できるデータの合計サイズを制限します。アップロードされたすべてのファイルを含む POST リクエスト。

Simon の場合、upload_max_filesize では最大 16Mb の個々のファイル サイズが許可されていますが、post_max_size の 8Mb 制限がリクエスト本文全体の制限要因になりました。

16MB ファイルのアップロードを許可するには、post_max_size の値を、upload_max_filesize 以上の値に増やす必要があります。これにより、アップロードされたファイルを含む POST リクエストの合計サイズが許容制限内に収まることが保証されます。

post_max_size を超えるファイルをアップロードするための代替方法の問題に関しては、次の点に注意することが重要です。

  • GET: GET リクエストはファイルのアップロードではサポートされていません。
  • PUT: PUT リクエストはアップロードに使用できますが、通常は使用されません。この目的には推奨されます。
  • その他: チャンク ファイルのアップロードやストリーミングなどの追加の方法を使用して、より大きなファイル転送を処理できますが、これらの技術にはより複雑な実装が必要になる場合があります。

以上がUpload_max_filesize が post_max_size より大きいときに「最大ファイル サイズを超えました」エラーが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。