PHP post_max_size vs upload_max_filesize, was ist der Unterschied?
Beim upload ein PDF
- Datei mit 15mb durch einen admin-Bereich erstellt, um dies zu tun, ist nichts passiert. Es gab keine Erfolgs-oder Fehlermeldung, aber die PDF
nicht hochladen.
Ich dann dachte, es könnte ein Problem mit der php.ini
Einstellungen. Sicher genug, als ich sah auf die Datei, die ich fand, dass die Grenzen gesetzt waren 8m. Die ich nehme heißt 8mb.
post_max_size: http://php.net/post-max-size
; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.
post_max_size = 20M
upload_max_filesize: http://php.net/upload-max-filesize
; Maximum allowed size for uploaded files.
upload_max_filesize = 20M
Blick auf die Kommentare, es scheint, dass man für Dateien, die hochgeladen wird, während die andere bezieht sich direkt auf POST
Daten. Was bin ich verwirrt, ist Folgendes Szenario: Wenn Sie ein Formular, das POST
'ing ein Bild zu einer anderen Seite, was zählt wie upload_max_filesize
oder post_max_size
? Fällt es unter den beiden? Hat man Vorrang? Gibt es Fälle, wo einer verwendet werden würde und nicht die anderen?
Edit:
Also, wenn ich ein Formular mit 3-Datei Eingänge, so dass Dateien bis zu 20 MB oder kleiner ist, werden die Einstellungen müssten eingestellt werden, etwa so:
upload_max_filesize = 20M
post_max_size = 60M
InformationsquelleAutor Tony M | 2014-05-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sind Sie richtig.
post_max_size
ist die maximale Größe für alle POST-body Daten. Es spielt keine Rolle, ob Sie die Buchung JSON oder Ihre DVD-Sammlung, das ist alles POST-body Daten. Ihre Datei hochladen, zählt für diese Begrenzung. Sie sollten sich auch bewusst sein, dass, wenn Sie hochladen von mehreren Dateien, die Gesamtgröße einer Datei passen muss innerhalb dieser Grenze.upload_max_filesize
ist eine maximale Größe nur für Dateien, die Geschrieben werden. Andere Arten von POST-body Daten unterliegen nicht dieser Begrenzung.Kurz gesagt, wenn Sie wollen, um größere Dateien hochzuladen, müssen Sie erhöhen sowohl Grenzen.
post_max_size
Also von dem, was ich verstehe, wenn ich ein Formular mit 3 uploads mit caps zu 20mb wäre es fein zu haben
upload_max_filesize = 20M
aberpost_max_size
müssten eingestellt werden, um60M
?Ja, das ist richtig.
Aber ein post mit einer Datei, die größer ist, als die Datei selbst (aufgrund von mime-Separatoren, die anderen Parameter etc), so dass 3 Dateien von 20 MB pro, hochgeladen, wenn Sie haben eine Gesamtgröße = 60MB + "einige zusätzliche Daten aus anderen Parametern, mime-encoding"...richtig?
Richtig. Sollte ich das geklärt haben in meinem Kommentar... ich habe versucht es einfach zu halten. Realistisch, fast niemand hochladen 3 Dateien in genau 20 MB Größe, so dass dies nicht ein Problem. Es sei denn natürlich Sie haben einen Ort, wo es ist, was Sie tun.
InformationsquelleAutor Brad
post_max_size ist wie die Obermenge. upload_max_filesize ist im Zusammenhang mit Datei-uploads, aber post_max_size geprüft für alle Art von POST-Daten. Es kann eine sehr große Inhalte, die gebucht werden kann, ist begrenzt durch post_max_size. Also für eine big-Datei, die Sie hochladen möchten, müssen Sie ändern Sie sowohl die Grenzen.
post_max_size
:"Sets max size of post data allowed. This setting also affects file upload. To upload large files, this value must be larger than upload_max_filesize."
Ich denke, dass das, was Neo versucht, um Aufmerksamkeit zu bringen, ist, dass post_max_size Größe muss alle Dateien, sollte aber größer sein (als die Summe aller hochgeladenen Dateien), wie es enthalten kann viel mehr (Parameter, MIME-Trennzeichen, etc)
InformationsquelleAutor Neo