Wie kann man das PHP Datei Upload Limit (file size upload limit) unter Linux Webservern erhöhen?
Viele Anwender von CMS Systemen wie WordPress, Typo3, Drupal, Joomla, … benötigen irgendwann die Freigabe für größere Fileuploads. PHP hat in der Standardkonfiguration meist eine Limitierung von 2MB. Diese Limitierung kann ganz einfach erhöht werden. Dazu sind folgende drei Optionen ausschlaggebend: memory limit, upload_max_filesize und post_max_size
Es ist dabei darauf zu achten, dass der Wert von post_max_size ein wenig höher ist als bei upload_max_filesize. Der Wert von memory_limit muss ebenfalls höher sein als der von post_max_size.
Um die Erhöhung des PHP Upload Limits auf eurem Webserver durchzuführen gibt es zwei Möglichkeiten: Direkt über die php.ini oder über eine .htaccess Datei. Es kommt natürlich auch auf den Webhosting Anbieter an, ob dieser das „overriden“ der Standardeinstellungen zulässt. Bei einem Root Server solltet ihr hier keine Probleme haben.
Variante #1 php.ini bearbeiten:
Die php.ini Datei beinhaltet die Konfiguration für PHP und kann entsprechend mit dem Lieblingseditor bearbeitet werden.
Debian – Ubuntu – Linux Mint – SuSE:
[bash]vi /etc/php5/apache2/php.ini[/bash]CentOS – RedHat – Fedora:
[bash]vi /etc/php.ini[/bash]Setzen der Werte auf 20 MB File Upload:
[bash]memory_limit = 64Mupload_max_filesize = 20M
post_max_size = 25M[/bash] [sam id=“2″ codes=“true“]
Variante #2 .htaccess Datei erstellen:
Die zweite Möglichkeit um die File Upload Werte zu erhöhen ist eine .htaccess Datei, die im entsprechenden Webserver Verzeichnis erstellt wird. Diese Variante ist etwas flexibler und die .htaccess kann bei mehreren Webseiten auf einem Server individuell, pro Projekt konfiguriert werden. Außerdem kommt sie beim managed Servern zum Einsatz, wo der Webhosting Anbieter die PHP Werte festlegt.
[bash]vi /var/www/.htaccess[/bash]Setzen der Werte auf 20 MB File Upload:
[bash]php_value memory_limit 64Mphp_value upload_max_filesize 20M
php_value post_max_size 25M[/bash]
Die Möglichkeit mit der .htaccess Datei war mir bisher so noch gar nicht bekannt.
Zu Möglichkeit #1: Es kann, gerade, wenn man mehrere Werte ändern will, auch Sinn machen eine neue *.ini-Datei anzulegen. Legt man diese in /etc/php5/apache2/conf.d ab, wird sie in der Regel automatisch erkannt.
Außerdem an dieser Stelle mal ein Lob: Nachdem ich einige interessante Artikel auf diesem Blog gefunden habe, hat er jetzt einen Platz in meinem FeedReader sicher.