PHP/Apache/AJAX: Navigieren durch POST-Größenbeschränkungen
Ihre Anfrage weist auf ein Problem beim Senden großer POST-Daten über AJAX hin. Obwohl Ihre PHP-Konfiguration angemessen erscheint, sind Sie auf ein schwer fassbares Problem gestoßen. Um dieses Problem zu beheben, untersuchen wir die möglichen Ursachen.
Apache-Grenzwerte:
-
LimitRequestBody: Diese Direktive steuert die maximale Größe von der HTTP-Anfragetext. Überprüfen Sie den Wert in den Fehlerprotokollen, um sicherzustellen, dass er 2 Millionen Zeichen überschreitet.
PHP-Grenzwerte:
-
post_max_size: Dieser Parameter schränkt die Größe der POST-Daten direkt ein. Überprüfen Sie diesen Wert noch einmal und überlegen Sie, ihn zu erhöhen.
-
max_input_time: Wenn die Verarbeitung der POST-Anfrage übermäßig lange dauert, kann diese Einstellung Probleme verursachen. Setzen Sie es auf -1, um das Zeitlimit zu deaktivieren.
-
max_input_nesting_level: Diese Einstellung begrenzt die Tiefe verschachtelter Datenstrukturen in POST-Anfragen.
-
memory_limit:Da große POST-Daten Speicher verbrauchen können, stellen Sie sicher, dass dieser Grenzwert ausreicht, um Ihre Datengröße zu bewältigen.
Zusätzliche Überlegungen:
-
Maximale Ausführungszeit: Auch wenn es unwahrscheinlich ist, dass dies der Übeltäter ist, stellen Sie sicher, dass diese Einstellung ausreichend Zeit für die Datenverarbeitung lässt.
-
Max. Eingabevariablen: Wenn Ihre POST-Daten eine große Menge enthalten Anzahl der Elemente muss dieser Wert möglicherweise erhöht werden.
Abwehrstrategien:
Wenn Apaches LimitRequestBody tatsächlich der begrenzende Faktor ist, kann dies erforderlich sein Teilen Sie Ihre Daten für die Übertragung in kleinere Teile auf. Dies kann durch benutzerdefinierte Skripterstellung oder den Einsatz von Techniken wie Filechunking erreicht werden.
Das obige ist der detaillierte Inhalt vonGroße POST-Daten mit AJAX: Warum stößt mein PHP/Apache-Setup an Grenzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!