In diesem Bereich können Sie die wichtigsten PHP-Konfigurationseinstellungen für Ihren Account ändern.
Bitte beachten Sie: Wir übernehmen keine Verantwortung, wenn durch hier getroffene, fehlerhafte Einstellungen, PHP-Skripte nicht mehr korrekt funktionieren. Sie bestätigen, dass Sie sowohl den Zweck jeder dieser Konfigurationsvariablen verstanden haben, als auch die möglichen Auswirkungen auf Ihre Skripte.
Einige der Einstellungen haben Auswirkungen auf die Sicherheit Ihres Accounts.
PHP-Version
Sie können 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 .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 .php72 -> PHP 7.2
- Dateiendung .php56 -> PHP 5.6
Es besteht auch die Möglichkeit, die verwendete PHP-Version verzeichnisweise einzustellen. Erstellen Sie 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.2
FcgidWrapper "/home/httpd/cgi-bin/php72-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
Andere Dateiendungen (zum Beispiel .html) durch PHP parsen lassen
Wenn Sie Dateien mit anderen Endungen durch PHP parsen lassen wollen, fügen Sie 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 können Sie 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.2-CLI:
/usr/bin/php72
- 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
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. Sie erhalten auch einen entsprechenden Hinweis, wenn eine Einstellung nicht für Ihre standardmäßig ausgewählte PHP-Version verfügbar ist. Die Einstellung könnte jedoch dann wirksam sein, falls Sie per .htaccess verzeichnisweise eine PHP-Version aktiviert haben.
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.
Achtung: Bei unsauberer Programmierung kann über diese Funktion Schadcode in Ihren 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!)
Achtung: Bei unsauberer Programmierung kann über diese Funktion Schadcode in Ihren 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. Deaktivieren Sie diese Option nur, wenn Sie Skripte einsetzen, die bei aktiven magic_quotes_gpc nicht funktionieren.
Achtung: Bei unsauberer Programmierung kann über diese Funktion Schadcode in Ihren 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 finden Sie 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öhen Sie 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öhen Sie diesen Wert nur bei Bedarf.
upload_max_filesize
Die maximale Größe für den Upload von Dateien. Erhöhen Sie diesen Wert nur bei Bedarf.
max_file_uploads
Die maximale Anzahl gleichzeitiger Uploads. Erhöhen oder verringern Sie 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.
Achtung: Nicht alle Kombinationen dieser Erweiterungen arbeiten problemlos zusammen! Sollten Sie nach Aktivierung einer dieser Erweiterungen Probleme mit Ihren Skripten feststellen, deaktivieren Sie bitte die entsprechende Erweiterung wieder.
Weitere Einstellungen
Viele weitere PHP-Einstellungen können Sie 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 finden Sie 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, legen Sie zunächst die gewünschte Logdatei (z.B. per FTP) an. Per .htaccess können Sie dann 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» ersetzen Sie durch den FTP-Benutzernamen des Accounts)