


Wie kann das Problem gelöst werden, dass PHP immer große Dateien nicht hochladen kann?
PHP schlägt beim Hochladen großer Dateien immer fehl, aber beim Hochladen kleiner Dateien gibt es kein Problem. Zuerst war ich verwirrt, aber schließlich habe ich die relevanten Informationen online überprüft und einen Artikel über die Gründe und Lösungen für das Versagen von PHP beim Hochladen großer Dateien zusammengestellt. Ich hoffe, dass er Ihnen gefällt.
Im Folgenden sind verschiedene Gründe und Lösungen aufgeführt:
Fall 1: Das temporäre Verzeichnis, in dem die Datei beim Hochladen der Datei gespeichert wird, muss offen und für den Benutzer des PHP-Prozesseigentümers zugänglich sein Geschrieben Verzeichnis. Wenn nicht angegeben, verwendet PHP den Systemstandard.
Upload_tmp_dir in der Datei php.ini wird verwendet, um das temporäre Verzeichnis zu beschreiben, in dem von PHP hochgeladene Dateien abgelegt werden. Wenn Sie Dateien hochladen möchten, müssen Sie sicherstellen, dass der Server die temporäre Datei nicht geschlossen hat und über Schreibberechtigung verfügt Ordner.
Fall 2: Der Wert von max_execution_time muss groß genug sein. Die Variable max_execution_time legt die in Sekunden gemessene Zeit fest, die PHP auf den Abschluss des Skripts wartet, bevor es zwangsweise beendet wird. Diese Variable ist nützlich, wenn das Skript in eine Endlosschleife eintritt. Diese Funktion kann jedoch auch dazu führen, dass der Vorgang fehlschlägt, wenn eine legitime Aktivität vorliegt, deren Abschluss lange dauert (z. B. das Hochladen einer großen Datei). In solchen Fällen müssen Sie erwägen, den Wert dieser Variablen zu erhöhen, um zu verhindern, dass PHP das Skript beendet, während das Skript einen wichtigen Prozess ausführt, z. B. das Festlegen auf 90 Sekunden.
max_execution_time = 90
Beachten Sie, dass es in der PHP-Funktion auch eine set_time_limit-Funktion gibt, die den gleichen Effekt wie die obige Einstellung hat. Der Unterschied zwischen den beiden besteht darin, dass die obige Einstellung in der php.ini-Datei festgelegt ist. während set_time_limit in einer PHP-Datei geschrieben ist. Daher können Sie die maximale Ausführungszeit des Programms auch festlegen, indem Sie set_time_limit auf der Seite verwenden. Beispiel: unlimited: set_time_limit(0);
Fall 3: file_uploads = On, was bedeutet, dass das Hochladen von HTTP-Dateien zulässig ist. Diese Option kann nicht auf AUS gesetzt werden.
Fall 4: upload_max_filesize = 2M legt die maximale Datei-Upload-Größe in der php.ini-Konfigurationsdatei fest. Ein Fehler, den PHP-Anfänger häufig machen, ist das Schreiben von Dateien. Sie legen den Formularbereich für die maximale Größe der hochgeladenen Datei fest, dh den maximalen Wert der Datei, der hochgeladen werden darf, und den Wert von max_file_size (Feld mit ausgeblendeten Werten), um die Größe der hochgeladenen Datei anzugeben. Im Allgemeinen können andere diesen Wert umgehen. Aus Sicherheitsgründen ist es daher am besten, die Option upload_max_filesize in der Konfigurationsdatei php.ini zu konfigurieren, um die Größe des Datei-Uploads festzulegen. Der Standardwert für upload_max_filesize = 2M, d. h. die Datei-Upload-Größe beträgt 2M. Wenn Sie Dateien mit mehr als 8 MB hochladen möchten, z. B. 20 MB, müssen Sie upload_max_filesize = 20 MB festlegen.
Fall 5: post_max_size Auch dieser Wert muss groß genug sein. Diese Variable ist auch eine Variable im Zusammenhang mit der Formularübermittlung. Sie begrenzt die maximale Datenmenge, die das PHP-Programm empfangen kann, wenn der Client ein Formular über die POST-Methode übermittelt. Im Allgemeinen kann dieser Wert etwas größer eingestellt werden als upload_max_filesize. Wenn Sie beispielsweise eine 20-MB-Datei hochladen möchten, kann dieser Wert auf 21 MB eingestellt werden.
Fall 6: max_input_time Diese Variable kann die Zeit des Datenempfangs über POST, GET und PUT in Sekunden begrenzen. Wenn die Anwendung in einer Umgebung mit einem langsamen Netzwerk ausgeführt wird, müssen Sie diesen Wert erhöhen, um die für den Datenempfang erforderliche Zeit zu verlängern. Legen Sie diesen Wert beispielsweise auf 90 Sekunden fest.
max_input_time = 90
Fall 7: „memory_limit“ muss ebenfalls groß genug sein, um zu vermeiden, dass die Ausführung von Skripten eine große Menge an verfügbarem Systemspeicher beansprucht. PHP ermöglicht die Definition von Speichernutzungsgrenzen. Verwenden Sie die Variable „memory_limit“, um die maximale Speicherkapazität anzugeben, die ein einzelnes Skript verwenden kann. Der Wert der Variablen „memory_limit“ sollte entsprechend größer sein als der Wert von „post_max_size“.
Szenario 8: Wenn Ihr Host ein Nginx-Betriebssystem ist und die oben genannten Vorgänge nicht funktionieren, denken Sie daran, client_max_body_size 20m in der Nginx-Konfigurationsdatei hinzuzufügen. Dieser Satz bedeutet, dass der maximal zulässige Upload 20 MB beträgt , abhängig von Ihrer eigenen Situation. Der Speicherort meiner Nginx-Konfigurationsdatei ist /usr/local/nginx/conf/nginx.conf.
Das obige ist der detaillierte Inhalt vonWie kann das Problem gelöst werden, dass PHP immer große Dateien nicht hochladen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

CakePHP ist ein Open-Source-Framework für PHP. Es soll die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich vereinfachen. CakePHP basiert auf einer MVC-ähnlichen Architektur, die sowohl leistungsstark als auch leicht zu verstehen ist. Modelle, Ansichten und Controller gu

Um am Datei-Upload zu arbeiten, verwenden wir den Formular-Helfer. Hier ist ein Beispiel für den Datei-Upload.

Der Validator kann durch Hinzufügen der folgenden zwei Zeilen im Controller erstellt werden.

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

CakePHP ist ein Open-Source-MVC-Framework. Es erleichtert die Entwicklung, Bereitstellung und Wartung von Anwendungen erheblich. CakePHP verfügt über eine Reihe von Bibliotheken, um die Überlastung der häufigsten Aufgaben zu reduzieren.

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet
