PHP-Konfiguration

Last change on 2025-10-31 • Created on 2020-01-21 • ID: MA-277B1

In diesem Bereich kannst du die wichtigsten PHP-Konfigurationseinstellungen für deinen Account ändern.

⚠️ Bitte beachte: Wir übernehmen keine Verantwortung, wenn durch hier getroffene, fehlerhafte Einstellungen, PHP-Skripte nicht mehr korrekt funktionieren. Du bestätigst, dass Sdu sowohl den Zweck jeder dieser Konfigurationsvariablen verstanden hast, als auch die möglichen Auswirkungen auf deine Skripte.**
⚠️ Einige der Einstellungen haben Auswirkungen auf die Sicherheit deines Accounts.

PHP-Version

Du kannst die standardmäßig verwendete PHP-Version einstellen. Alle Dateien mit der Endung .php werden automatisch mit dieser PHP-Version geparst. Zusätzlich existieren standardmäßig folgende Zuordnungen:

  • Dateiendung .php85 -> PHP 8.5
  • Dateiendung .php84 -> PHP 8.4
  • Dateiendung .php83 -> PHP 8.3
  • Dateiendung .php82 -> PHP 8.2
  • Dateiendung .php81 -> PHP 8.1
  • Dateiendung .php80 -> PHP 8.0
  • Dateiendung .php74 -> PHP 7.4
  • Dateiendung .php73 -> PHP 7.3
  • Dateiendung .php56 -> PHP 5.6

Es besteht auch die Möglichkeit, die verwendete PHP-Version verzeichnisweise einzustellen. Erstelle dazu im gewünschten Verzeichnis eine Datei .htaccess mit folgendem Inhalt:

PHP 5.6

FcgidWrapper "/home/httpd/cgi-bin/php56-fcgi-starter.fcgi" .php

PHP 7.3

FcgidWrapper "/home/httpd/cgi-bin/php73-fcgi-starter.fcgi" .php

PHP 7.4

FcgidWrapper "/home/httpd/cgi-bin/php74-fcgi-starter.fcgi" .php

PHP 8.0

FcgidWrapper "/home/httpd/cgi-bin/php80-fcgi-starter.fcgi" .php

PHP 8.1

FcgidWrapper "/home/httpd/cgi-bin/php81-fcgi-starter.fcgi" .php

PHP 8.2

FcgidWrapper "/home/httpd/cgi-bin/php82-fcgi-starter.fcgi" .php

PHP 8.3

FcgidWrapper "/home/httpd/cgi-bin/php83-fcgi-starter.fcgi" .php

PHP 8.4

FcgidWrapper "/home/httpd/cgi-bin/php84-fcgi-starter.fcgi" .php

PHP 8.5

FcgidWrapper "/home/httpd/cgi-bin/php85-fcgi-starter.fcgi" .php

Andere Dateiendungen (zum Beispiel .html) durch PHP parsen lassen

Wenn du Dateien mit anderen Endungen durch PHP parsen lassen willst, füge zusätzlich folgendes hinzu:

FcgidWrapper "/home/httpd/cgi-bin/php74-fcgi-starter.fcgi" .html
FcgidWrapper "/home/httpd/cgi-bin/php74-fcgi-starter.fcgi" .htm
<FilesMatch "\.(html|htm)$">
 SetHandler fcgid-script
</FilesMatch>

(Beispiel für PHP 7.4 und .htm/.html-Dateien)

PHP-CLI (Kommandozeile)

Folgende PHP-CLI-Interpreter kannst du verwenden:

Hinweis: Der Kommandozeilenaufruf php bzw. /usr/bin/php verwendet jetzt die in der konsoleH unter Einstellungen > PHP-Konfiguration eingestellte PHP-Version.

  • PHP-CLI (eingestellte Version): /usr/bin/php
  • PHP 5.6-CLI: /usr/bin/php56
  • PHP 7.3-CLI: /usr/bin/php73
  • PHP 7.4-CLI: /usr/bin/php74
  • PHP 8.0-CLI: /usr/bin/php80
  • PHP 8.1-CLI: /usr/bin/php81
  • PHP 8.2-CLI: /usr/bin/php82
  • PHP 8.3-CLI: /usr/bin/php83
  • PHP 8.4-CLI: /usr/bin/php84
  • PHP 8.5-CLI: /usr/bin/php85

Für die aktuelle SSH-Sitzung kann die PHP Version ebenfalls wie folgt angepasst werden:

export PHPVERSION=8.0

PHP-Einstellungen

Nicht alle der angebotenen Einstellungen sind für alle PHP-Versionen verfügbar. Hinter jeder Einstellung ist im Hilfetext vermerkt, für welche PHP-Versionen die jeweilige Einstellung gilt. Du erhältst auch einen entsprechenden Hinweis, wenn eine Einstellung nicht für deine standardmäßig ausgewählte PHP-Version verfügbar ist. Die Einstellung könnte jedoch dann wirksam sein, falls du per .htaccess verzeichnisweise eine PHP-Version aktiviert hast.

display_errors

Ist diese Option aktiviert, werden PHP-Fehler im Browser angezeigt.

allow_url_fopen

Ist diese Option aktiviert, können Inhalte von fremden Seiten eingebunden werden.

⚠️ Bei unsauberer Programmierung kann über diese Funktion Schadcode in deinen Account eingeschleust werden!

allow_url_include

Ist diese Option aktiviert, können Inhalte von fremden Seiten auch per include eingebunden werden. (allow_url_fopen muss ebenfalls aktiv sein!)

⚠️ Bei unsauberer Programmierung kann über diese Funktion Schadcode in deinen Account eingeschleust werden!

magic_quotes_gpc

Ist diese Option aktiviert, werden in übergebenen Daten enthaltene Anführungszeichen maskiert. Dies vermindert die Wahrscheinlichkeit von erfolgreichen Angriffen auf unsauber programmierte PHP-Skripte. Deaktiviere diese Option nur, wenn du Skripte einsetzt, die bei aktiven magic_quotes_gpc nicht funktionieren.

⚠️ Bei unsauberer Programmierung kann über diese Funktion Schadcode in deinen Account eingeschleust werden!

expose_php

Ist diese Einstellung aktiviert, ist die verwendete PHP-Version im HTTP-Header sichtbar.

mbstring.func_overload

Diese Einstellung wird von manchen Skripten benötigt, um UTF8 codierte Daten korrekt zu verarbeiten. Nähere Informationen zu dieser Einstellung findest du im PHP-Manual unter https://www.php.net/mbstring.overload

memory_limit

Der maximal zur Verfügung stehende Speicher für Ihre PHP-Skripte. Erhöhe diesen Wert nur bei Bedarf.

max_execution_time

Die maximal zur Verfügung stehende Zeit (in Sekunden) für die Ausführung Ihrer PHP-Skripte. Erhöhe diesen Wert nur bei Bedarf.

upload_max_filesize

Die maximale Größe für den Upload von Dateien. Erhöhe diesen Wert nur bei Bedarf.

max_file_uploads

Die maximale Anzahl gleichzeitiger Uploads. Erhöhe oder verringere diesen Wert nur bei Bedarf.

extension/zend_extension

Bei Bedarf lassen sich die PHP-Erweiterungen «ImageMagick», «MongoDB», «OPCache», «Zend Optimizer», «IonCube Loader», «APCu» oder «Source Guardian» einbinden. Diese zusätzlichen Module werden von manchen Skripten benötigt oder verbessern allgemein die PHP-Performance. Ob dies der Fall ist, lässt sich in der jeweiligen Dokumentation des Skripts einsehen.

⚠️ Nicht alle Kombinationen dieser Erweiterungen arbeiten problemlos zusammen! Solltest du nach Aktivierung einer dieser Erweiterungen Probleme mit deinen Skripten feststellen, deaktiviere bitte die entsprechende Erweiterung wieder.

Weitere Einstellungen

Viele weitere PHP-Einstellungen kannst du direkt per .htaccess-Datei setzen:

php_value [Einstellung_1] [Wert]
php_flag [Einstellung_2] [0 oder 1]

php_value kommt bei allen Einstellungen zum Einsatz, die einen Wert (Zahl oder Zeichenkette) erfordern, php_flag wird bei PHP-Einstellungen verwendet, welche nur an- oder ausgeschalten werden können. Eine ausführliche Übersicht aller setzbaren Einstellungen findest du im PHP-Manual https://www.php.net/manual/de/ini.list.php

PHP-Errorlog einrichten

Um Fehler von PHP-Skripten in ein Log speichern zu lassen, lege zunächst die gewünschte Logdatei (z.B. per FTP) an. Per .htaccess kannst du das PHP-Errorlog aktivieren:

php_flag  log_errors on
php_value error_log  /usr/home/«login»/php.log

(In diesem Beispiel liegt die Logdatei im Homeverzeichnis des Accounts und heißt php.log. «login» ersetzt durch den FTP-Benutzernamen des Accounts)

Bitte beachte, dass du die numerische Repräsentation von Logleveln verwenden musst, wenn du die error_log Option via .htaccess Datei setzen möchtest:

php_value error_reporting 32767

(Dieses Beispiel setzt die error_log Option auf E_ALL, wessen numerische Repräsentation 32767 entspricht)

FAQ

Welche PHP Versionen sind installiert?

Eine PHP-Info Ausgabe der aktuell installierten Versionen findest du unter folgenden Adresse:

http://www.testen.de

Wie kann festgelegt werden welche PHP Version verwendet wird?

Siehe PHP-Konfiguration.

Wie ist PHP auf dem Server installiert?

Der Apache Webserver ruft auf Bestandsservern PHP über FCGI auf, neue Hosting Server verwenden FPM für die PHP-Anbindung.

Wie groß darf eine Datei sein, welche mit einem PHP-Script hochgeladen wird?

Die maximale Dateigröße für Uploads per PHP-Script kannst du in konsoleH über den Wert upload_max_filesize der PHP-Konfiguration definieren.
Diese setzt gleichzeitig auch den Wert post_max_size.

Du kannst die Werte auch per .htaccess-Datei setzen:

php_value post_max_size 200M
php_value upload_max_filesize 200M
Table of Contents