Welche PHP-Einstellungen kann ich ändern?

Hier finden Sie eine Übersicht der wichtigsten php.ini-Direktiven, mit denen Sie die PHP-Einstellungen Ihres Webhosting-Paketes an die Anforderungen Ihrer Website anpassen können.

Sicherheitseinstellungen

register globals = On

Hinweis: Diese Einstellung wurde mit PHP 5.4 entfernt.

Durch Deaktivierung dieser Einstellung kann die Sicherheit erhöht, da nicht mehr so einfach veränderte Variablen in den Code einfügt werden können.
 

allow_furl_open = On

Legt fest, ob Dateizugriffe auf externe URLs erlaubt sind. Das Unterbinden erhöht die Sicherheit, da es für Angreifer schwieriger ist, Schadprogramme nachzuladen.

display_errors = Off

Auch wenn die Fehleranzeige für das Debuggen nützlich ist, liefert sie Angreifern jedoch auch interne Informationen. Daher empfiehlt es sich, diese abzuschalten.

disable_functions

Spezifiziert eine Liste von Funktionen, die ausgeschaltet werden sollen. Diese werden von PHP-Software üblicherweise nicht genutzt, wohl aber von Angreifern.
Beispiel: disable_functions = exec,system,passthru,shell_exec, popen,escapeshellcmd,proc_open, proc_nice,ini_restore

safe_mode = On

Schaltet den Safe-Mode an, der bewirkt, dass PHP in einem abgesicherten Modus läuft. Bei Dateioperationen finden weitere Prüfungen statt und der Zugriff auf Umgebungsvariablen ist beschränkt.

Skriptlimit-Einstellungen

Hinweis: Die Grenzwerte für den Arbeitsspeicher (RAM) werden nachfolgend in der php.ini-typischen Schreibweise angegeben. So steht zum Beispiel ein Wert von 256M für ein Begrenzung des verfügbaren Arbeitsspeichers auf 256 Megabytes (MB).

memory_limit = 256M

Legt fest, wie viel Arbeitsspeicher (RAM) ein Skript maximal beanspruchen darf. ACHTUNG: Unabhängig vom dem hier angegebenen, globalen Wert gilt das für Ihr Paket vorgegebene Memory-Limit. Höhere Werte werden daher vom Webserver ignoriert. Um das memory_limit zum Beispiel auf 512 MB zu setzen, muss folgendes in die php.ini eingetragen werden: memory_limit = 512M

post_max_size = 64M

Bestimmt, wie groß die via POST-Methode übertragene Datenmenge maximal sein darf. Wenn Sie große Dateien per Formular hochladen möchten, sollte der Wert größer als upload_max_filesize sein.   Um post_max_size zum Beispiel auf 128 MB zu setzen, tragen Sie folgendes in die php.ini ein: post_max_size = 128M
Hinweis: Die tatsächliche Größe kann variieren. Zum Beispiel wenn dabei die maximale Skriptlaufzeit überschritten wird. Des weiteren muss das memory_limit größer als post_max_size sein.

upload_max_filesize = 64M

Bestimmt, wie groß Dateien, die per Formular hochgeladen werden, sein dürfen. Um beispielsweise Dateien mit einer Größe von bis zu 128 MB hochladen zu können, tragen Sie folgendes in die php.ini ein: upload_max_filesize = 128M

max_execution_time = 60

Zeitbegrenzung, wie lange ein Skript laufen darf. ACHTUNG: Unabhängig vom dem hier angegebenen, globalen Wert gilt das für Ihr Paket vorgegebene Max_Execution_Time. Höhere Werte werden daher vom Webserver ignoriert. Um die Ausführungszeit für Skripte zum Beispiel auf 45 Sekunden zu beschränken, tragen Sie folgendes in Ihre php.ini ein: max_execution_time = 45

Sonstige Einstellungen

zlib.output_compression = off

Komprimiert php Dateien im gzip-Format

session.auto_start = off

Spezifiziert, ob das Session-Modul zu Beginn einer Anfrage automatisch eine Session startet. Grundeinstellung 0(deaktiviert).

max_input_vars = 5000

Diese Direktive verhindert die Nutzung von Hashtable Kollisionen für eine Denial of Service Attacke. Wenn mehr Eingabe-Variablen gesendet werden, als mit dieser Direktive erlaubt, wird ein Fehler der Stufe E_WARNING geworfen und weitere Eingabe-Variablen werden nicht angenommen. Dieses Limit wird für mehrdimensionale Eingabe-Arrays für jede Nesting-Ebene einzeln berechnet.

max_input_time = -1

Legt die maximale Zeit in Sekunden fest, die ein Skript verbrauchen darf, um Eingabedaten (wie POST, GET und Dateiuploads) zu verarbeiten. Die Zeit wird gemessen, wenn die Daten auf dem Server empfangen bis zum Start der Skriptausführung. Zeit in Sekunden (-1 = kein Limit)