検索
ホームページバックエンド開発PHPの問題Nginx + PHP が処理およびアップロードできるファイル数の簡単な分析

Nginx と PHP は、Web アプリケーションを開発する際に非常に重要なコンポーネントです。これら 2 つのコンポーネントは通常、Web リクエストを処理し、アプリケーション サーバー経由で HTML ページまたはその他の静的コンテンツを返すために使用されます。 Web アプリケーションを開発するときは、通常、ファイルをアップロードして処理する必要があります。ただし、対処する必要がある疑問があります。それは、Nginx と PHP が処理およびアップロードできるファイルの数はいくつですか?

  1. PHP ファイル アップロードの制限

PHP では、ファイル アップロードの制限を制御するために使用できる 2 つのパラメータ、upload_max_filesize と post_max_size があります。どちらのパラメータも PHP.ini ファイル内の設定です。このうち、upload_max_filesize パラメータは 1 つのファイルの最大アップロード ファイル サイズを制御するために使用され、post_max_size パラメータは HTTP リクエスト全体の最大サイズを制御するために使用されます。

たとえば、Web サイトで 10 MB のファイルをアップロードする必要があるとします。 PHP.ini で、upload_max_filesize を 10M に設定します。 post_max_size が 20M に設定されている場合、コードがアップロード リクエストをどのように処理するかに応じて、アプリケーションは 10M 未満の複数のファイルを同時にアップロードできます。ただし、20M を超えるファイルをアップロードする必要がある場合、アプリケーションはアップロード リクエストを処理できません。

  1. Nginx ファイルのアップロード制限

Nginx 自体にはファイルのアップロードに関する制限はありませんが、一部の構成はファイルのアップロードに影響を与える可能性があります。たとえば、Nginx では、 client_max_body_size パラメーターを使用して、クライアント リクエストの最大サイズを制御します。リクエストのサイズがこの値を超えると、Nginx は 413 Request Entity Too Large エラーを返します。デフォルトでは、この値は 1M です。

解決策

ファイルを安全にアップロードして処理するには、PHP.ini と Nginx に適切な制限を設定することが最善です。 PHP では、PHP.ini で Upload_max_filesize パラメータと post_max_size パラメータを設定できます。スクリプトで ini_set() 関数を使用して、PHP.ini の設定をオーバーライドすることもできます。

Nginx では、nginx.conf ファイルで client_max_body_size パラメーターを設定できます。たとえば、2GB のファイルのアップロードを許可するには、この値を次のように設定します。

client_max_body_size 2G;

summary

Nginx と PHP は複数のファイルを処理してアップロードできますが、これはサーバーとアプリケーション プログラムによって異なります。設定。 Web アプリケーションを開発するときは、アップロード ファイル サイズの制限に注意し、サーバーに適切な制限を設定する必要があります。

以上がNginx + PHP が処理およびアップロードできるファイル数の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール