PHP アップロード ファイルに関連するパラメータ
PHP のデフォルトのアップロード制限は最大 2M です。この設定を超えるファイルをアップロードする場合は、PHP や Apache などのいくつかのパラメータを調整する必要があります。以下では、PHP ファイルのアップロードに関連するいくつかのパラメータを簡単に紹介します。 >
file_uploads
HTTP スイッチによるファイルのアップロードを許可するかどうか、デフォルトは ON
upload_tmp_dir
upload_tmp_dir は、PHP によってアップロードされたファイルの配置を記述するために使用されます Temporaryファイルをアップロードする場合は、サーバーが一時ファイルを
閉じず、フォルダーへの書き込み権限があることを確認する必要があります。指定しない場合、PHP はシステムのデフォルト値
upload_max_filesize
許可されるアップロード ファイルの最大サイズ、デフォルトは 2M
post_max_size
PHP が POST メソッドを使用してフォーム送信で受信できるデータの最大量を制御します。 PHP ファイル
アップロード関数を使用する場合は、POST、GET、および PUT メソッドのこの値を、upload_max_filesize
max_input_time
(秒) より大きくなるように変更する必要があります。データを受信できる時間は限られています。アプリケーションが低速リンクで
を実行している場合は、データの受信に必要な追加時間に対応するためにこの値を増やす必要があります
memory_limit
スクリプトの実行を回避するには利用可能なシステム メモリを大量に使用するため、PHP ではメモリ使用量の制限を定義できます。
memory_limit 変数を使用して、単一のスクリプトが使用できる最大メモリ容量を指定します。変数memory_limit の値は、post_max_size
の値より適切に
大きくする必要があります。 max_execution_time
max_execution_time は、スクリプトを強制終了する前に PHP がスクリプトの完了を待機する時間を設定します。この時間は秒
で測定されます。この変数は、スクリプトが無限ループに入った場合に役立ちます。ただし、この機能は、
の完了に長時間かかる正当なアクティビティ (大きなファイルのアップロードなど) がある場合に操作が失敗する可能性もあります。このような場合、
スクリプトがいくつかの重要なプロセスを実行しているときに PHP がスクリプトをシャットダウンしないように、この変数の値を増やすことを検討する必要があります
Linux ホストの場合、/ にある可能性があります。 etc/ httpd/conf.d/access.conf/ の下に php.conf ファイルもあります。この
ファイルは、一部のシステムのファイル サイズ制限の問題を解決する可能性があります
[編集] discuz による PHP の実装 大きなファイルのアップロード アプリケーションの例
サーバー構成、php、ネットワーク、その他の要因により、フォーラムの添付機能は元々ファイル管理用に設計されたものではありません
。 、フォーラムのドキュメントを介してアップロードすることは良い解決策ではありません。
フォーラムの添付ファイルをアップロードするための条件を本当に改善する必要がある場合は、大規模なニーズに適応するために、php.ini、
で上記のパラメータを設定してみてください。ファイルのアップロード。同時に、フォーラムのバックグラウンドで添付ファイルの制限を設定することを忘れないでください。
フォーラムには、添付ファイルのアップロードのサイズを制限できる主な場所が 2 つあり、高レベルから低レベルまで次のとおりです。
投稿関連---添付ファイルの種類のサイズ
ユーザー グループ --- 添付ファイル関連
同時に、http 経由で大きな添付ファイルのアップロードに成功した友人によって提供された設定ガイドも掲載しています。もちろん、
みんなのサーバー設定 ネットワークの状況によっては、必ずしもあなたの状況に当てはまらない場合があります。変更するには、
php.ini を開き、
パラメータ設定を参照する必要があります。手順
file_uploads を許可するかどうかを指定します。HTTP 経由でファイルをアップロードするためのスイッチです。デフォルトは ON です。これは、
upload_tmp_dir -- ファイルが一時ファイルが保存されるサーバーにアップロードされることを意味します。指定しない場合、システムのデフォルトの
一時フォルダー
がアップロードされます。 Upload_max_filesize 8m Wangwen ビジネス、つまり、許可される最大アップロード ファイル サイズが使用されます。デフォルトは 2M です。
post_max_size 8m は、フォーム内のすべての値を含む、PHP へのフォーム POST を通じて受信できる最大値を指します。デフォルトは
8M
説明
通常、ネットワークが正常であれば、上記の 4 つのパラメータを設定した後、
しかし、8Mを超える大きなファイルをアップロードしたい場合は、上記の4つの項目を設定するだけで間違いなく動作します。実際にネットワークのアップロード速度が 100M/S
でない限り、次のパラメータを設定し続ける必要があります。
max_execution_time 600 各 PHP ページの実行にかかる最大時間値 (秒)、デフォルトは 30 秒です
max_input_time 600 各 PHP ページがデータを受信するのに必要な最大時間、デフォルトは60 秒
memory_limit 8m 各 PHP ページで消費される最大メモリ、デフォルトは 8M
上記のパラメータを変更すると、ネットワークで許可されている通常の状況で大きなファイルをアップロードできます
[編集] フォーラム ファイルのアップロードでよくあるエラーの種類 (継続的に要約...)
警告: '\php2' を開いて読み取ることができません: e:userweb の引数が無効です
larksoft.netuploadupfile.php の 10 行目
は、php の Upload_tmp_dir が読み取り可能および書き込み可能である必要がある理由です。
解析エラー: c:program での解析エラー。 filesapache groupapachehtdocsmdweb
ftpfileupload.php の 14 行目
解析エラーは、通常、「;」、「'」、「)」などのマッチングの問題など、ステートメントの問題です。