PHP 7 beschleunigt im Vergleich mit PHP 5.6 durch OpCode Caching und eine optimierte Zend Engine viele dynamische Websites um über 100%.

Für Ihre Besucher bedeutet das ein besseres Benutzererlebnis durch schnelleren Seitenaufbau, für Ihre Website ein verbessertes Ranking bei Google durch höheren Pagespeed.

Geschwindigkeitsverbesserungen in PHP 7

Den enormen Geschwindigkeitszuwachs erreicht PHP 7 vor allem durch Verbesserungen der Zend Engine, erweitertes OpCode Caching, eine verbesserte Datenstruktur und den damit reduzierten Speicherbedarf und effizienteres Speichermanagement.

So funktioniert OpCode Caching

Im Normalfall werden PHP-Skripte zur Laufzeit kompiliert. Dabei wird ein Teil der Rechenzeit für die Umwandlung des Codes benötigt. Mit OPcache wird diese Berechnung nur einmal durchgeführt und das vorkompilierte, maschinenlesbare (berechnete) Skript in einem Cache gespeichert. Aus diesem Cache kann das Skript bei Bedarf blitzschnell geladen werden. In den meisten Fällen führt das zu erheblichen Geschwindigkeitsverbesserungen.

Vor allem größere Websites können mit aktiviertem OPcache wesentlich mehr Anfragen gleichzeitig bedienen – ein wichtiger Vorteil für Unternehmens-Websites und eCommerce-Anwendungen.

Den Wechsel zu PHP 7 vorbereiten

PHP 7 bietet grundsätzlich eine sehr gute Kompatibilität zu älteren PHP-Versionen – die Wahrscheinlichkeit, dass bestehende Anwendungen und Skripte funktionieren ist also hoch. Trotzdem empfehlen wir Ihnen, Websites, Plugins und Skripte mit PHP 7 zu testen, bevor Sie PHP 7 für Produktivumgebungen einsetzt. 

Hierzu ein Beispiel: Die Einführung von Type-Hints und den damit erstmals reservierten Wörtern „int“, „string“ und „float“ verursacht zu Anfang noch Probleme für bestimmte CMS.  Joomla! etwa ist in Version 3.4 nicht zu PHP 7 kompatibel, da es die Typ-Bezeichnung „string“ auf eine Art verwendet, die in PHP 7 nicht zulässig ist. Die Joomla! Community hat die Verwendung mittlerweile korrigiert, wie Sie hier nachlesen können Joomla! 3.5 unterstützt PHP 7 ohne Einschränkungen.

PHP-Version im 1&1 IONOS Control-Center aktualisieren

Sie können in den PHP-Einstellungen des 1&1 IONOS Control-Center für jede Domain individuell die PHP-Version anzeigen oder ändern.

Die Änderung der PHP-Version dauert in der Regel wenige Sekunden bis zu einer Minute. Wir empfehlen Ihnen, nach der Änderung Ihre Skripte zu testen. Für eventuell auftretende Probleme haben wir Häufige Fehlermeldungen bei PHP-Skripten und Empfehlungen für mögliche Lösungen zusammen gestellt. Sie können den Wechseln Ihrer PHP-Version jederzeit rückgängig machen.

OPcache über php.ini aktivieren

Nach dem Wechsel zu PHP 7 können Sie für Ihre Websites OpCode Caching (OPcache) aktivieren. Dazu müssen Sie auf Ihrem Webspace ein neues Verzeichnis für den Cache erstellen und die php.ini im Hauptverzeichnis Ihrer Website anpassen.

Webspace-Verzeichnis für den Cache erstellen
Melden Sie Sich per SFTP an Ihrem Webspace an

Diese Anleitung zeigt Ihnen, wie Sie Schritt für Schritt Dateien sicher mit FTP übertragen.

Erstellen Sie im Root-Verzeichnis ein neues Verzeichnis. In diesem Verzeichnis wird in Zukunft der Cache für Ihre Websites gespeichert.

Bitte beachten Sie: Um die Daten im Cache zu schützen, erstellen Sie unbedingt ein Verzeichnis mit einem führenden Punkt (z.B.: ../.opcache). Dieses Verzeichnis wird dann von Ihrem Apache Webserver automatisch geschützt.

Absoluten Pfad in der php.ini hinterlegen

Im nächsten Schritt müssen Sie den absoluten Pfad zu dem erstellten .opcache Verzeichnis in der php.ini hinterlegen. In dieser Anleitung erfahren Sie, wie Sie den Absoluten Pfad (Document Root) mittels PHP-Skript ermitteln.

So sollte die Pfadangabe aussehen: /kunden/homepages/mein-pfad/htdocs/.opcache

php.ini anpassen

Öffnen Sie über SFTP das Hauptverzeichnis Ihrer Website und öffnen Sie die Datei php.ini.

Ergänzen Sie hier folgenden Eintrag:

opcache.file_cache=/kunden/homepages/mein-pfad/htdocs/.opcache;

Bitte beachten Sie: Verwenden Sie unter opcache.file_cache= den absoluten Pfad zu Ihrem .opcache Verzeichnis.

Der gesamte Inhalt der php.ini sollte nach diesem Schritt wie folgt aussehen.

zend_extension=opcache.so;
opcache.enable=1;
opcache.memory_consumption=32;
opcache.interned_strings_buffer=8;
opcache.max_accelerated_files=3000;
opcache.revalidate_freq=180;
opcache.fast_shutdown=0;
opcache.enable_cli=0;
opcache.revalidate_path=0;
opcache.validate_timestamps=2;
opcache.max_file_size=0;
opcache.file_cache=/kunden/homepages/mein-pfad/htdocs/.opcache;
opcache.file_cache_only=1;

Speichern Sie die Datei php.ini und laden Sie diese wieder auf Ihren Webspace hoch.

So können Sie prüfen, ob OPcache für Ihre Website aktiv ist

Nachdem Sie den OPcache für Ihre Website aktiviert haben und diese einige Male aufgerufen wurde, können Sie einfach prüfen, ob der Cache korrekt arbeitet.

Melden Sie sich erneut per SFTP an Ihrem Webspace an und öffnen Sie das vorhin erstellte Verzeichnis ../.opcache.

In diesem Verzeichnis sollten Sie jetzt die gecachten Inhalte Ihrer Website sehen.

Dieser Artikel wurde am 30 Oct 2018 von Nico als Teil des Topics PHP erstellt.

Diskutieren Sie mit!