Heim  >  Artikel  >  Backend-Entwicklung  >  Warum können keine großen PHP-Dateien hochgeladen werden?

Warum können keine großen PHP-Dateien hochgeladen werden?

不言
不言Original
2018-07-09 17:51:361915Durchsuche

Dieser Artikel stellt hauptsächlich die Gründe und Lösungen für den Fehler beim Hochladen großer PHP-Dateien vor. Jetzt kann ich ihn mit allen teilen, die ihn benötigen.

Lösung für php.ini, das große Dateien nicht hochladen kann

1. Öffnen Sie php.ini

2. Post_max_size finden: (Upload-Größenbeschränkung ändern)

Der Maximalwert für die Formularübermittlung begrenzt die Größe eines einzelne hochgeladene Datei, aber das Standardlimit für die übermittelten Daten des gesamten Formulars beträgt 8 m. Stellen Sie den Wert auf einen größeren Wert ein als upload_max_filesize

3. Datei-Uploads suchen:(Einschränkungen für den Upload-Schalter ändern)

Ob das Hochladen von Dateien über den HTTP-Schalter zugelassen werden soll, bestätigen Sie file_uploads = on

4. Upload_tmp_dir finden:(Beschränkungen für das Hochladen temporärer Dateien ändern)

Die Datei ist an den Ort hochgeladen, an dem temporäre Dateien auf dem Server gespeichert sind. Wenn nicht angegeben, wird der temporäre Standardordner des Systems verwendet. Wenn der Systemfehler „xxx temporäres Verzeichnis xxx“ anzeigt, müssen Sie ein gültiges Verzeichnis für dieses Verzeichnis festlegen Es wird kein Fehler gemeldet. Lassen Sie es in Ruhe 🎜>Die maximal zulässige Upload-Dateigröße beträgt standardmäßig 2 m. Stellen Sie diesen Parameter auf den von Ihnen benötigten Wert ein. Es wird empfohlen, den Wert „post_max_size“ nicht zu überschreiten, da er durch den Wert „post_max_size“ gesteuert wird (auch wenn „upload_max_filesize“ festgelegt ist). auf 1g,

und wenn post_max_size nur auf 2m eingestellt ist, ist es größer als 2m. Die Datei kann immer noch nicht hochgeladen werden, da sie durch den post_max_size-Wert gesteuert wird)

6. Wenn Sie eine Datei hochladen möchten, die größer als 8 m ist, müssen Sie außerdem die folgenden Parameter festlegen: (Upload-Zeitlimit ändern)

Find max_execution_time = 600; Der maximale Zeitwert (Sekunden) für die Ausführung jeder PHP-Seite, der Standardwert ist 30 Sekunden

max_input_time = 600; Seite zum Empfangen von Daten, der Standardwert beträgt 60 Sekundenmemory_limit = 8m; Der maximal erforderliche Speicher für jede PHP-Seite, der Standardwert 8m

Lösung zum Hochladen großer Dateien mit der Nginx-Methode

1.Client_body_buffer_size sollte so groß wie möglich eingestellt werden basiert auf Geschwindigkeitsüberlegungen. Wenn die hochgeladene Datei immer auf die Festplatte geschrieben werden muss, weil sie zu klein eingestellt ist, ist die Geschwindigkeit zu langsam. 2.client_body_temp_path Der Pfad muss über Schreibberechtigungen verfügen. Dies ist ein offensichtlicher Fehler. Korrigieren Sie es einfach 3.client_max_body_size legt den Maximalwert für hochgeladene Dateien fest. Dies basiert auf Sicherheitsüberlegungen. Wir glauben, dass normale Benutzer keine zu großen Dateien hochladen werden .

kann auf client_max_body_size 100m eingestellt werden oder diesen Wert entsprechend Ihrem eigenen Unternehmen festlegen.

1. Öffnen Sie php.ini

2.

Der Maximalwert für die Formularübermittlung begrenzt nicht die Größe einer einzelnen hochgeladenen Datei, sondern die Übermittlungsdaten des gesamten Formulars Es wird empfohlen, diesen Parameter auf den von Ihnen benötigten Wert einzustellen

3. Datei-Uploads finden: (Upload-Schalterlimit ändern)

Ob das Hochladen von Dateien über den HTTP-Schalter zugelassen werden soll, bestätigen Sie file_uploads = on

4. Finden Sie upload_tmp_dir: (Beschränkungen für das Hochladen temporärer Dateien ändern)

Die Datei wird an den Ort hochgeladen, an dem temporäre Dateien auf dem Server gespeichert sind. Wenn nicht angegeben, wird das System hochgeladen Wenn der Systemfehler „xxx „Temporäres Verzeichnis xxx“ anzeigt, müssen Sie für dieses Verzeichnis ein gültiges Verzeichnis festlegen. Wenn kein Fehler gemeldet wird, ignorieren Sie ihn

5. Upload_max_filesize finden: (Ändern Sie die Upload-Größenbeschränkung)

Die maximal zulässige Upload-Dateigröße, der Standardwert ist 2 m, legen Sie sie fest Es wird nicht empfohlen, dass dieser Parameter den Wert post_max_size überschreitet, da er durch den Wert post_max_size gesteuert wird (auch wenn upload_max_filesize auf 1g eingestellt ist,

).

Wenn post_max_size nur auf 2 m eingestellt ist, können Dateien, die größer als 2 m sind, immer noch nicht hochgeladen werden, da dies durch den post_max_size-Wert gesteuert wird)

6 Wenn Sie Um Dateien mit einer Größe von mehr als 8 m hochzuladen, müssen Sie außerdem die folgenden Parameter festlegen: (Upload-Zeitlimit ändern)

Finden Sie max_execution_time = 600; die maximale Zeit für jede PHP-Seite zum Ausführen Wert (Sekunden), Standard 30 Sekunden

max_input_time = 600; Maximale Zeit, die jede PHP-Seite benötigt, um Daten zu empfangen, Standard 60 Sekunden

memory_limit = 8m; Der maximal erforderliche Speicher für jede PHP-Seite, der Standardwert ist 8m

Lösung zum Hochladen großer Dateien mit der Nginx-Methode

1.client_body_buffer_size Versuchen Sie, es so groß wie möglich einzustellen. Dies basiert auf Geschwindigkeitsüberlegungen, wenn die hochgeladene Datei immer auf die Festplatte geschrieben werden muss weil die Einstellung zu klein ist, wird die Geschwindigkeit reduziert. Es ist einfach zu langsam.

2.client_body_temp_path Der Pfad muss über Schreibberechtigungen verfügen. Dies ist ein offensichtlicher Fehler. Korrigieren Sie es einfach

3.client_max_body_size legt den Maximalwert für hochgeladene Dateien fest. Dies basiert auf Sicherheitsüberlegungen. Wir glauben, dass normale Benutzer keine zu großen Dateien hochladen werden .

kann auf client_max_body_size 100m eingestellt werden oder diesen Wert entsprechend Ihrem eigenen Unternehmen festlegen.

Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, er wird für das Studium aller hilfreich sein. Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website.

Verwandte Empfehlungen:

Verwendung von Heredoc in PHP

Spätere statische Bindung von PHP

Das obige ist der detaillierte Inhalt vonWarum können keine großen PHP-Dateien hochgeladen werden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn