FAQ - PHP, Pear, Perl, Phyton, TCL

Häufig gestellte Fragen

Zur Übersicht

Für die verschiedenen PHP-Editionen stellt McAc.net zahlreiche Module bereits standardmäßig in PHP einkompiliert zur Verfügung. Einige PHP-Module werden hingegen nicht einkompiliert bereitgestellt, können jedoch extern in PHP eingebunden werden.

Viele dieser Module stellen wir bereits vorkompiliert zur Verfügung, so dass eine einfache und schnelle Einbindung vorgenommen werden kann. Zudem nimmt McAc.net bei Aktualisierungen von PHP automatisch eine Neukompilierung der jeweiligen Module vor, ohne dass Ihrerseits ein manuelles Eingreifen erforderlich wäre!

Um vorkompilierte Module in PHP einzubinden, erstellen Sie im php.ini-Editor unter der jeweiligen Domain bitte einfach einen entsprechenden Eintrag. Hierbei sind die folgenden Angaben erforderlich:

1. Angabe des Modul-Verzeichnisses

Alle für eine bestimmte Edition von PHP zusätzlich verfügbaren Module befinden sich in einem gemeinsamen Verzeichnis. Dieses Verzeichnis muss in der php.ini-Datei angegeben werden, um beim Aufruf von PHP sicherzustellen, dass an der richtigen Stelle nach dem zu ladenden Modul gesucht wird. Nachfolgend finden Sie die Verzeichnisse für die unterschiedlichen bei McAc.net verfügbaren Editionen von PHP:

  • /usr/local/lib/php_modules/5-53STABLE
  • /usr/local/lib/php_modules/5-54STABLE
  • /usr/local/lib/php_modules/5-55STABLE
  • /usr/local/lib/php_modules/5-55LEGACY
  • /usr/local/lib/php_modules/5-55LATEST
  • /usr/local/lib/php_modules/5-56STABLE
  • /usr/local/lib/php_modules/5-56LATEST
  • /usr/local/lib/php_modules/5-56LEGACY
  • /usr/local/lib/php_modules/7-70STABLE
  • /usr/local/lib/php_modules/7-70LATEST
  • /usr/local/lib/php_modules/7-71LEGACY
  • /usr/local/lib/php_modules/7-71STABLE
  • /usr/local/lib/php_modules/7-71LATEST
  • /usr/local/lib/php_modules/7-72STABLE
  • /usr/local/lib/php_modules/7-72LATEST
  • /usr/local/lib/php_modules/7-73STABLE
  • /usr/local/lib/php_modules/7-73LATEST

Für die LIGHT- und EXTENDED-Editionen können die Verzeichnisse der jeweils übergeordneten Edition verwendet werden. Möchten Sie beispielsweise für die Edition „7-73LATEST-EXTENDED“ Module extern einbinden, so verwenden Sie bitte das Verzeichnis der Edition „7-73LATEST“.

Der Eintrag in die php.ini-Datei ist wie folgt vorzunehmen:

extension_dir=“/usr/local/lib/php_modules/7-73LATEST

Möchten Sie für eine andere PHP-Edition die Moduleinbindung vornehmen, so passen Sie die Pfadangabe im genannten Beispiel bitte einfach entsprechend an.

2. Angabe des einzubindenden Verzeichnisses

Neben der Angabe des Modul-Verzeichnisses ist es erforderlich, in der php.ini-Datei das Modul anzugeben, welches extern eingebunden werden soll. Dieser Eintrag ist wie folgt vorzunehmen:

extension=“openssl.so“

In diesem Beispiel wird das openssl-Modul eingebunden, bitte ersetzen Sie das Wort „openssl“ einfach durch den Namen des Moduls, welches Sie gerne einbinden möchten. Eine Liste der verfügbaren Module können Sie über den nachfolgenden FAQ-Beitrag in Erfahrung bringen.

Beachten Sie bitte, dass über den php.ini-Editor lediglich ein einzelnes zusätzliches PHP-Modul eingebunden werden kann. Sollen mehrere PHP-Module gleichzeitig eingebunden werden, so ist dies ausschließlich über das manuelle Anlegen einer eigenen php.ini-Datei möglich.

Selbstverständlich können Sie ein Einbinden von Modulen auch mittels Erstellen bzw. Editieren von php.ini-Dateien ohne die Verwendung des php.ini-Editors vornehmen. Nach manueller Anlage der php.ini-Datei nehmen Sie dort bitte einen Eintrag wie weiter oben beschrieben vor, um die gewünschten Module einzubinden.

ACHTUNG: Bitte beachten Sie, dass wir uns bemühen, stets auf die ordnungsgemäße Funktionalität der zusätzlich vorkompilierten Module zu achten, wir hierfür jedoch keine Gewährleistung übernehmen können.

Beim Anlegen oder Verändern einer php.ini-Datei stehen Ihnen eine Vielzahl von Optionen und Parametern zur Verfügung. Erklärungen hierzu finden Sie direkt im Editor neben der entsprechenden Option. Weiterführende Dokumentation ist unter de.php.net/configuration verfügbar.

PHP-Scripte sind auf unseren Servern in allen Verzeichnissen lauffähig.

Sie können bei McDomain zahlreiche PHP-Versionen für jede Domain (nicht Subdomain) auswählen. Die Auswahl treffen Sie ganz einfach über das Kundenmenü unter:

  • „Domain“
  • betreffende Domain auswählen und „öffnen“
  • Reiter „Einstellungen“
  • Dropdown Menü „PHP-Version“

Zudem können Sie die Edition auswählen, um festzulegen, welchen Funktionsumfang / welche Module Sie für die Website zur Verfügung stellen wollen. Je umfangreicher der Umfang, desto umfangreicher ist jedoch auch die Last für den Server und somit desto langsamer kann die Auslieferung der Webseiten erfolgen, was eine Benachteiligung für Besucher und Suchmaschinen darstellen kann. Unter PHP-Edition können Sie wählen zwischen:

  • Extended
  • LIGHT
  • STANDARD
  • FASTCGI

Der Editor steht Ihnen in allen Tarifen mit PHP zur Verfügung.

Um für eine einzelne Domain eine php.ini-Datei anzulegen, klicken Sie bitte einfach im Kundenmenü auf „Domain“ und dann bei der gewünschten Domain auf das Icon rechts. Es öffnet sich ein Dropdown-Menü. Klicken Sie dann auf den Reiter „Einstellungen“. Hier können Sie die entsprechenden Änderungen vornehmen, welche sofort aktiv werden.

Über den user.ini Editor haben Sie die Möglichkeit, die Einstellungen für PHP für Ihre Webpräsenzen anzupassen. Dies geschieht über ein komfortables Interface in Ihrem Kundenmenü. Hier einige Punkte die angepasst werden können:

  • expose_php: Bestimmt, ob PHP die Tatsache, dass es auf dem Server installiert ist, über einen Header bekannt geben darf (z.B. X-Powered-By: PHP/8.1.0).
  • max_input_vars: Legt fest, wie viele Eingabe-Variablen maximal angenommen werden (dieses Limit wird auf die superglobalen $_GET, $_POST und $_COOKIE separat angewandt). Diese Direktive verhindert die Nutzung von Hashtable Kollisionen für eine Denial of Service Attacke.
  • display_errors: Mit Aktivierung dieser Checkbox werden Fehlermeldungen direkt im Browser mit ausgegeben. Wir empfehlen, diese Option nicht für öffentlich zugängliche Seiten zu aktivieren, da andernfalls die Gefahr besteht, dass u.U. sensible Daten preisgegeben werden.
  • log_errors: Durch Aktivierung dieser Checkbox werden Fehlermeldungen nicht im Browser mit ausgegeben, sondern in eine Log-Datei geschrieben. Den Pfad zu dieser Logdatei können Sie über die nachfolgende Option error_log festlegen.
  • error_log: Sofern Sie die obenstehende Option log_errors aktiviert haben, so können Sie hier die Log-Datei definieren, in welche die Fehlermeldungen geschrieben werden sollen. Wenn die Datei bereits existiert, achten Sie bitte darauf, dass Sie Schreibrechte für die Datei besitzen. Wenn die Datei gemäß Ihren nebenstehenden Angaben angelegt werden soll, so achten Sie bitte darauf, dass Sie Schreibrechte für das entsprechende Verzeichnis besitzen.
  • include_path: Hier kann eine Liste von Verzeichnissen angegeben weden, in welchen die Funktionen require, include und fopen_with_path nach Dateien suchen sollen. Die Verzeichnisse müssen hierbei durch einen einfachen Doppelpunkt voneinander getrennt werden, z.B.: /mein-verzeichnis1/unterverzeichnis/: /mein-verzeichnis2/unterverzeichnis/
  • upload_max_filesize: Hier können Sie die maximale Größe in Bytes für das Hochladen von Dateien festlegen. Bitte beachten Sie, dass hier unbedingt die Eingabe in Bytes erforderlich ist Alternativ hierzu können Sie auch eine Eingabe in der Form 8M in diesem Fall für 8 Megabyte oder 16k für 16 Kilobyte vornehmen.

Der Pfad zu GraphicsMagick ist: /usr/bin/gm

GraphicsMagick ermöglicht wie ImageMagick die Manipulation von Grafiken mittels Skripten. GraphicsMagick basiert ursprünglich auf ImageMagick, arbeitet im Gegensatz zu diesem jedoch teilweise deutlich schneller und ressourcenschonender und erzeugt meist qualitativ hochwertigere Bilder.

Definitiv ist dies ein anstrebbares Ziel. In der Version 7 wurden viele Optimierungen integriert. PHP 7 ist nochmal deutlich schneller als PHP 5 und gleichzeitig Ressourcenschonender. Damit werden Websites noch schneller ausgeliefert, was nicht nur eine bessere User-Erfahrung bedeutet, sondern auch ein Ranking-Faktor für Suchmaschinen wie Google darstellt.

Leider kann man nicht immer genau vorhersagen, ob Ihre alten Scripte auch unter PHP 7 lauffähig sind. Generell kann man sagen, dass Scripte, die unter PHP 5.6 liefen, auch unter PHP 7 funktionieren sollten. Unter http://php.net/manual/de/migration70.php kann man einsehen, wie man eine Seite migriert, wenn es Probleme geben sollte.

Den absoluten Serverpfad Ihres Accounts finden Sie in Ihrem Kundenmenü bei „Informationen“ unter dem Punkt „Serverpfad“.

Es können folgende Endungen ausgeführt werden: .php , .php3 , .php4 und .phtml

Selbstverständlich ist es jedoch auch möglich, beliebige Datei-Endungen mit PHP interpretieren zu lassen.

Hierzu ist es erforderlich, eine .htaccess-Datei mit folgendem Inhalt anzulegen:

AddType application/x-httpd-php .htm
AddType application/x-httpd-php .html

Das Modul „ionCube Loader“ stellt eine Alternative zum Zend Optimizer dar und steht bei McDomain bereits vorkompiliert zur Verfügung. Es wird über die Zend-Extension geladen und daher anders eingebunden, als weiter oben für die vorkompiliert bereitgestellten PHP-Module beschrieben.

Um „ionCube Loader“ einzubinden, ersetzen Sie im PHP.INI-Editor unter „Häufig genutzte Optionen“ die Angabe bei „zend_extension“ abhängig von der verwendeten PHP-Edition durch:

  • PHP-Edition 5-54-STABLE:
    /usr/local/lib/php_modules/5-54STABLE/ioncube_loader_lin_5.4.so
  • PHP-Edition 5-55-STABLE:
    /usr/local/lib/php_modules/5-55STABLE/ioncube_loader_lin_5.5.so
  • PHP-Edition 5-55-LATEST:
    /usr/local/lib/php_modules/5-55LATEST/ioncube_loader_lin_5.5.so
  • PHP-Edition 5-56-STABLE:
    /usr/local/lib/php_modules/5-56STABLE/ioncube_loader_lin_5.6.so
  • PHP-Edition 5-56-LATEST:
    /usr/local/lib/php_modules/5-56LATEST/ioncube_loader_lin_5.6.so
  • PHP-Edition 7- LEGACY:
    /usr/local/lib/php_modules/7-70 LEGACY/ioncube_loader_lin_7.0.so
  • PHP-Edition 7-STABLE:
    /usr/local/lib/php_modules/7-70STABLE/ioncube_loader_lin_7.0.so
  • PHP-Edition 7-LATEST:
    /usr/local/lib/php_modules/7-70LATEST/ioncube_loader_lin_7.0.so
  • PHP-Edition 7-1LEGACY:
    /usr/local/lib/php_modules/7-71LEGACY/ioncube_loader_lin_7.1.so
  • PHP-Edition 7-1STABLE:
    /usr/local/lib/php_modules/7-71STABLE/ioncube_loader_lin_7.1.so
  • PHP-Edition 7-1LATEST:
    /usr/local/lib/php_modules/7-71LATEST/ioncube_loader_lin_7.1.so
  • PHP-Edition 7-2STABLE:
    /usr/local/lib/php_modules/7-72STABLE/ioncube_loader_lin_7.2.so
  • PHP-Edition 7-2LATEST:
    /usr/local/lib/php_modules/7-72LATEST/ioncube_loader_lin_7.2.so
  • PHP-Edition 7-3STABLE:
    /usr/local/lib/php_modules/7-73STABLE/ioncube_loader_lin_7.3.so
  • PHP-Edition 7-3LATEST:
    /usr/local/lib/php_modules/7-73LATEST/ioncube_loader_lin_7.3.so

Aktivieren Sie ggf. im PHP.INI-Editor unter „Häufig genutzte Optionen“ die Option „zend_optimizer.enable_loader„.

Im Folgenden eine List der vorkompilierten Module. Bitte binden Sie nur die ein, die wirklich benötigt werden, um eine hohe Performance der Website zu gewährleisten.

Für PHP 5 und PHP 7 verfügbare Module

  • curl.so
  • imagick.so
  • imap.so
  • intl.so
  • PHP 5.4: ioncube_loader_lin_5.4.so
  • PHP 5.5: ioncube_loader_lin_5.5.so
  • PHP 5.6: ioncube_loader_lin_5.6.so
  • PHP 7.0: ioncube_loader_lin_7.0.so
  • PHP 7.0: ioncube_loader_lin_7.1.so
  • PHP 7.0: ioncube_loader_lin_7.2.so
  • PHP 7.0: ioncube_loader_lin_7.3.so
  • ldap.so
  • mailparse.so
  • mbstring.so
  • mcrypt.so
  • memcache.so (nur bis PHP 5.6)
  • mime_magic.so
  • mysqlind.so (ab PHP 5.4 nicht mehr notwendig, da bereits einkompiliert)
  • mysqlnd.so (ab PHP 5.4 nicht mehr notwendig, da bereits einkompiliert)
  • ncurses.so
  • oauth.so
  • pgsql.so
  • soap.so
  • sockets.so
  • suhosin.so (nur PHP 5)
  • suhosin7.so (nur PHP 7)
  • tidy.so
  • xmlrpc.so
  • zip.so (ab PHP 5.4 nicht mehr notwendig, da bereits einkompiliert)

Beim Anlegen / Editieren stehen Ihnen im php.ini-Editor folgende Optionen zur Verfügung:

  • Häufig genutzte Optionen
    In dieser Tabelle haben wir die am häufigsten verwendeten php.ini-Einstellungen zusammengestellt. Sie können diese Einstellungen direkt in der Tabelle vornehmen, ohne manuelle Eintragungen in die weiteren, unter „Sonstige Einstellungen“ aufgeführten, Optionen vornehmen zu müssen. Rechts neben den jeweiligen Optionen finden Sie die entsprechenden Erklärungen zu den einzelnen Punkten. Alternativ hierzu können Sie die unter den häufig genutzten Optionen aufgeführten Einstellungen auch direkt händisch unter „Sonstige Einstellungen“ eintragen. Bitte beachten Sie in diesem Fall, dass hierbei evtl. zuvor unter „häufig genutzte Optionen“ vorgenommene Änderungen überschrieben werden.
  • Sonstige Einstellungen
    Aufgrund der Vielzahl an Einstellungsmöglichkeiten kann ein Großteil der php.ini-Optionen nicht über die „häufig genutzten Optionen“ verwaltet werden. Sie können jedoch alle in der oberen Tabelle nicht enthaltenen Einstellungsmöglichkeiten einfach unter „Sonstige Einstellungen“ eingeben.

Bitte beachten Sie, dass Optionen, welche über die „häufig genutzten Optionen“ definiert wurden, unter „Sonstige Einstellungen“ nicht aufgeführt sind. Sie können jedoch bei Bedarf die „häufig genutzten Optionen“ händisch unter „Sonstige Einstellungen“ eingeben. In diesen Fällen werden evtl. zuvor unter „häufig genutzte Optionen“ vorgenommene Änderungen durch die bei „Sonstige Einstellungen“ angegebenen Werte überschrieben.

Bei McDomain können Sie für die komplette Domain die PHP-Version über das Kundenmenü umstellen. Es ist aber auch möglich, nur für ein Verzeichnis eine andere PHP-Version zu nutzen.

Erstellen Sie dazu eine .htaccess-Datei in dem betreffenden Verzeichnis. Als Inhalt fürgen Sie bitte folgendes in die .htaccess-Datei ein, wenn Sie zum Beispiel PHP 7 nutzen wollen:

AddType application/x-httpd-php7 .php

Folgende Punkte können nicht mit dem php.ini Editor angepasst werden:

  • PHP dadurch als Modul laufen lassen
  • Module einfügen, die nicht für den Einsatz als „nachladbares“ Modul geeignet sind
  • ein eigenes php-binary nutzen
  • SQLite ein- oder aus schalten.

PHP 5 ist deutlich verbessert worden gegenüber der Version 4. Im Vordergrund steht vor allem objektorientierte Programmierung, die deutlich erweitert wurde. Auch XML-Funktionalitäten wurden deutlich erweitert.

Grundsätzlich ist die von McDomain verwendete php.ini so konfiguriert, dass eine höchstmögliche Kompatibilität bei ausreichender Sicherheit gewährleistet wird. Sollten Sie feststellen, dass eines Ihrer Skripte aufgrund einer Einstellung in der php.ini nicht wie vorgesehen läuft, so können Sie dies eventuell mit anderen Einstellungen in der user.ini korrigieren.

Gleiches gilt für die Sicherheit Ihrer Skripte. Sollten Sie andere Sicherheitspräferenzen benötigen, so kann dies nun bequem Eingestellt werden.

PHP 7 ist die neuste Version der weitverbreiteten OpenSource-Skriptsprache PHP, die speziell für die Nutzung im Internet konzipiert wurde.

Informationen zur Programmiersprache erhalten Sie unter www.php.net

Der Pfad zu ImageMagick ist: /usr/bin/convert

ImageMagick steht bei McDomain ab PHP 5 vorkompiliert zur externen Einbindung zur Verfügung. Um es zu verwenden, müssen Sie die Extension „imagick.so“ einbinden. Infos zur Einbindung vorkompilierter PHP-Module

Safe Mode ist bei uns auf „OFF“ gesetzt. Da PHP auf unseren Servern als CGI ausgeführt wird, ist sichergestellt, dass es durch die Deaktivierung des Safe Mode zu keinerlei Sicherheitslücken kommt!