Mehr Arbeitsspeicher für unsere Easy.Hosting-Pakete

Gute Nachrichten für alle Kundinnen und Kunden mit einem Easy.C- oder Easy.D-Hosting-Paket: Wir haben die Speicherlimits für PHP und andere Skripte deutlich erhöht. Damit steht anspruchsvolleren Webanwendungen wie WordPress, Onlineshops und Content-Management-Systemen künftig mehr Arbeitsspeicher zur Verfügung.

Die Speicherlimits gelten jeweils pro PHP- bzw. CGI-Prozess, nicht für den gesamten Benutzeraccount. In den Easy.Hosting-Paketen können maximal 12 Prozesse gleichzeitig ausgeführt werden. Die Änderung gilt ab sofort für alle bestehenden und neuen Hosting-Pakete des jeweiligen Tarifs:

Hosting-PaketBisheriges Limit
pro PHP-Prozess
Neues Limit
pro PHP-Prozess
Easy.A256 MBunverändert
Easy.B256 MBunverändert
Easy.C256 MB384 MB
Easy.D256 MB512 MB

Damit bietet Easy.C jetzt 50 % und Easy.D sogar 100 % mehr Arbeitsspeicher als bisher – ohne zusätzliche Kosten. Für noch größeren RAM-Bedarf bieten wir unsere Pro.Hosting-Pakete an.

Gerade bei umfangreicheren WordPress-Installationen mit Themes von Elementor oder Divi, aufwendigen Plugins oder größeren Datenverarbeitungen kann der zusätzliche Arbeitsspeicher hilfreich sein und Fehler durch zu geringe Speicherlimits vermeiden.

So nutzen Sie die höheren Speicherlimits

Wichtig: Die Standardeinstellung für das PHP-Speicherlimit (memory_limit) bleibt auch in den Paketen Easy.C und Easy.D zunächst bei 256 MB. Wer mehr Arbeitsspeicher benötigt, kann das Limit selbst über eine eigene php.ini-Datei erhöhen.

Für Easy.C kann beispielsweise folgender Wert eingetragen werden:

memory_limit = 384M

Für Easy.D lautet die Einstellung entsprechend:

memory_limit = 512M

Wie Sie eine eigene PHP-Konfiguration anlegen und verwenden, erklären wir in folgendem FAQ-Artikel: Was sind php.ini-Dateien und wie kann ich sie nutzen?.

Besonderheit bei WordPress: WordPress verwendet zusätzlich eigene Speicherlimits, die in der Datei wp-config.php festgelegt werden können. Damit WordPress den höheren Arbeitsspeicher tatsächlich nutzen kann, müssen gegebenenfalls auch die Einstellungen WP_MEMORY_LIMIT und WP_MAX_MEMORY_LIMIT angepasst werden.

Eine Schritt-für-Schritt-Anleitung finden Sie in unserem FAQ-Artikel Wie kann ich das WordPress-Speicherlimit erhöhen?.

Mehr Arbeitsspeicher benötigt? Ein Tarifwechsel ist unkompliziert möglich

Wenn Sie derzeit ein kleineres Hosting-Paket nutzen und für Ihre Webseite mehr Arbeitsspeicher benötigen, können Sie jederzeit in einen größeren Tarif wechseln. Eine formlose E-Mail an unsere Kundenbetreuung genügt. Wir kümmern uns um die nahtlose Umstellung.

Auch für unsere Reseller planen wir eine Erweiterung: Künftig sollen sie die Möglichkeit erhalten, für die Hosting-Pakete ihrer Kunden gegen Aufpreis höhere Speicherlimits zu buchen. Sobald diese Option verfügbar ist, werden wir alle Reseller darüber informieren.

Eine vollständige Übersicht der Speicher- und Prozesslimits aller Hosting-Pakete finden Sie in unseren FAQ zu den Hosting-Limits.

MySQL und MariaDB: Künftig nur noch aktuelle LTS-Versionen

Wir werden unser Angebot an MySQL- und MariaDB-Versionen in Zukunft stärker auf aktuell gepflegte LTS-Versionen (Long-Term Support) ausrichten.

Unser Ziel ist es, künftig nur noch Datenbank-Versionen anzubieten, die vom jeweiligen Hersteller regulär mit Fehlerkorrekturen und Sicherheitsupdates versorgt werden. Extended- oder Enterprise-Supportzeiträume berücksichtigen wir dabei nicht.

Aktuell gepflegte Versionen sind:

MySQL

  • MySQL 9.7 LTS
  • MySQL 8.4 LTS

MariaDB

  • MariaDB 12.3 LTS
  • MariaDB 11.8 LTS
  • MariaDB 11.4 LTS
  • MariaDB 10.11 LTS

Ältere Datenbank-Versionen werden wir daher zukünftig schrittweise auf eine weiterhin unterstützte LTS-Version aktualisieren.

Neue Option: Automatik für die aktuelle LTS-Version

Zusätzlich planen wir eine neue Auswahlmöglichkeit für neue Datenbanken: Kundinnen und Kunden sollen ihre Datenbank künftig so konfigurieren können, dass sie automatisch auf der jeweils aktuellen LTS-Version von MySQL beziehungsweise MariaDB gehalten wird.
Sobald wir eine neue LTS-Version in unsere Plattform aufnehmen, würde eine entsprechend konfigurierte Datenbank dann auf diese Version aktualisiert. So müssen Sie sich nicht selbst darum kümmern, rechtzeitig von einer auslaufenden Datenbank-Version auf eine neue LTS-Version zu wechseln und profitieren immer von den neuesten Funktionen.

Rechtzeitige Ankündigung per E-Mail

Wir planen die Einführung dieser neuen Option und die Aktualisierung der bestehenden Datenbankserver bis zum Ende dieses Jahres. Alle betroffenen Kundinnen und Kunden erhalten dazu eine individuelle Mitteilung über den jeweiligen Update-Termin.

Neue Version schon jetzt testen

Insbesondere bei älteren Anwendungen kann es sinnvoll sein, schon vorab zu prüfen, ob die eingesetzte Software mit einer aktuellen MySQL- oder MariaDB-Version problemlos funktioniert. Dazu können Sie bereits heute eine neue Datenbank mit einer aktuellen Version anlegen und die Inhalte Ihrer bestehenden Datenbank dorthin kopieren. Anschließend lässt sich die Anwendung testweise mit der neuen Datenbank verbinden, ohne die bisherige Datenbank sofort aufgeben zu müssen.

Wie Sie dabei vorgehen können, beschreiben wir in unserem FAQ-Artikel:
Wie kann ich die MySQL-Version meiner Datenbank ändern?

Wir empfehlen insbesondere Kunden mit älteren CMS-, Shop- oder individuell entwickelten Anwendungen, diese Möglichkeit frühzeitig zu nutzen und die Kompatibilität mit einer aktuellen LTS-Version zu testen.

Neu verfügbar: MySQL 9.7 und MariaDB 12.3

Ab sofort stehen bei Variomedia zwei neue Datenbank-Versionen zur Verfügung: MySQL 9.7 LTS und MariaDB 12.3 LTS. Beide können beim Anlegen einer neuen Datenbank direkt im Kundenmenü oder über unsere API ausgewählt werden.

Die neuen LTS-Versionen bieten eine langfristig gepflegte Grundlage für neue Webseiten und Anwendungen und bringen zahlreiche Verbesserungen bei Performance, Sicherheit und Funktionsumfang mit.

MySQL 9.7 folgt auf MySQL 8.4 und bündelt die Weiterentwicklungen der MySQL-9-Reihe in einer langfristig unterstützten Version. Dazu gehören unter anderem Optimierungen bei InnoDB, dem Query Optimizer sowie bei der Verarbeitung von JSON-Daten.

MariaDB 12.3 bringt ebenfalls zahlreiche Performance-Verbesserungen und erweitert den SQL-Funktionsumfang. Verbesserungen gibt es unter anderem beim Query Optimizer und bei der Verarbeitung von JSON-, XML- und Vektordaten.

Für neue Projekte empfehlen wir, nach Möglichkeit eine aktuelle MySQL- oder MariaDB-Version zu verwenden. Bei älteren Anwendungen sollten Sie vorher prüfen, welche Datenbank-Versionen offiziell unterstützt werden.

Wechsel auf eine neue Datenbank-Version

Bestehende Datenbanken werden nicht automatisch auf eine neue Version umgestellt. Wer auf MySQL 9.7 oder MariaDB 12.3 wechseln möchte, kann eine neue Datenbank mit der gewünschten Version anlegen und die Inhalte der bisherigen Datenbank dorthin kopieren.

Wie das funktioniert, haben wir in unserem FAQ-Artikel „Wie kann ich eine Datenbank in eine andere Datenbank kopieren?“ beschrieben.

PHP 8.5 ist verfügbar

Am 20.11.2025 ist die neue PHP Version 8.5 erschienen. Wir haben diese PHP-Version auf allen Webservern installiert, so dass Sie sie für Ihre Web-Anwendungen verwenden können.

Änderungen, Neuerungen und Verbesserungen

In PHP 8.5 gibt es zahlreichen Änderungen und Neuerungen, von denen hier nur die wichtigsten kurz vorgestellt werden sollen.

OpCache

Ab PHP Version 8.5 ist der PHP OpCode Cache kein optionales Zusatzmodul mehr, sondern fest in PHP integriert. Dadurch muss OpCache nicht mehr als Zend Extension-Modul über eine php.ini-Konfigurationsdatei geladen werden.

Falls Sie OpCache verwenden möchten, müssen Sie jedoch weiterhin eine php.ini-Konfigurationsdatei erstellen, um den Datei-Modus von OpCache mit dem gewünschten Cache-Verzeichnis zu konfigurieren.

Neue Funktionen

Um direkt auf das erste bzw. letzte Element in einem Array zuzugreifen, gibt es in PHP 8.5 nun die beiden entsprechenden Funktionen array_first() und array_last():

array_first(["single element"]); // "single element"
array_last(["single element"]); // "single element"
 
array_first([]); // NULL
array_last([]); // NULL
 
array_first([1 => 'a', 0 => 'b', 3 => 'c', 2 => 'd']); // 'a'
array_last([1 => 'a', 0 => 'b', 3 => 'c', 2 => 'd']); // 'd'
 
$str = "hello";
array_first([&$str, false]); // "hello" (no ref)
array_last([false, &$str]); // "hello" (no ref)

Pipe Operator

Durch den neuen Pipe Operator |> können verschachtelte Funktionsaufrufe in eine besser lesbare Kette umgewandelt werden:

$result = "   Hello,   World   " |> strtolower(...)
                                 |>  trim(...); // "hello, world"

Stack Traces

Bei schwerwiegenden Fehlern werden nun wie bei vielen anderen Programmiersprachen längst üblich sogenannte Stack Traces ausgegeben. Dabei handelt es sich um eine Liste der Funktionen bzw. Methoden, die vor dem Auftreten des Fehlers aufgerufen wurden. Vertrauliche Parameter, die mit dem Attribut  #[\SensitiveParameter] markiert wurden, werden dabei ausgeblendet.

Performance-Verbesserungen

Die für die meisten Endanwender interessanteste Verbesserung bei neuen PHP-Versionen betrifft die Performance. Wir konnten in ersten Tests mit WordPress eine Verbesserung der Seitenladezeit um etwa 5% ermitteln.

PHP 8.5 aktivieren

Sie können die PHP-Version 8.5 für die gewünschten Domains entweder im Kundenmenü einstellen (Anleitung), oder per .htaccess-Konfigurationsdatei im Hauptverzeichnis der gewünschten Web-Anwendung mittels folgender Direktive aktivieren:

AddHandler application/x-httpd-php85 .php

PHP 8.1 End of Life

Mit dem Erscheinen von PHP 8.5 nähert sich auch das Ende der Unterstützung für PHP 8.1. Ab dem 31.12.2025 wird es für diese PHP-Version keine Updates in Falle von sicherheitsrelevanten Fehlern mehr geben.

Falls Sie noch die PHP-Version 8.1 (oder älter) verwenden, sollten Sie so bald wie möglich auf eine aktuellere PHP-Version wechseln.

PHP 8.5 RC1 zum Testen verfügbar

Wir haben auf unseren Webservern nun den ersten Release Candidate der kommenden PHP-Version 8.5 installiert. Mit den Release Candidate Versionen können Anwender und Entwickler die Kompatibilität ihrer Web-Anwendungen mit der kommenden PHP-Version vor dem offiziellen Release-Termin prüfen, und gegebenenfalls erforderliche Änderungen vornehmen.

Beachten Sie bitte, dass die Release Candidate Versionen nicht für den dauerhaften Produktivbetrieb von Web-Anwendungen genutzt werden sollten, da noch einige bisher unentdeckte Fehler und Probleme auftreten können.

Der geplante Release-Termin für die General Availability-Version von PHP 8.5 ist der 20.11.2025. Bis dahin sollen noch 3 weitere Release Candidate-Versionen mit letzten Verbesserungen und Fehlerbehebungen erscheinen, die wir zeitnah auf den Webservern installieren werden.

Änderungen, Neuerungen und Verbesserungen

In PHP 8.5 gibt es zahlreichen Änderungen und Neuerungen, von denen hier nur die wichtigsten kurz vorgestellt werden sollen.

OpCache

Ab PHP Version 8.5 ist der PHP OpCode Cache OpCache kein optionales Zusatzmodul mehr, sondern fest in PHP integriert. Dadurch muss OpCache nicht mehr als Zend Extension-Modul über eine php.ini-Konfigurationsdatei geladen werden.

Falls Sie OpCache verwenden möchten, müssen Sie jedoch weiterhin eine php.ini-Konfigurationsdatei erstellen, um den Datei-Modus von OpCache mit dem gewünschten Cache-Verzeichnis zu konfigurieren.

Neue Funktionen: array_first() und array_last()

Um direkt auf das erste bzw. letzte Element in einem Array zuzugreifen, gibt es in PHP 8.5 nun die beiden entsprechenden Funktionen array_first() und array_last():

array_first(["single element"]); // "single element"
array_last(["single element"]); // "single element"
 
array_first([]); // NULL
array_last([]); // NULL
 
array_first([1 => 'a', 0 => 'b', 3 => 'c', 2 => 'd']); // 'a'
array_last([1 => 'a', 0 => 'b', 3 => 'c', 2 => 'd']); // 'd'
 
$str = "hello";
array_first([&$str, false]); // "hello" (no ref)
array_last([false, &$str]); // "hello" (no ref)

Stack Traces

Bei schwerwiegenden Fehlern werden nun wie bei vielen anderen Programmiersprachen längst üblich sogenannte Stack Traces ausgegeben. Dabei handelt es sich um eine Liste der Funktionen bzw. Methoden, die vor dem Auftreten des Fehlers aufgerufen wurden. Vertrauliche Parameter, die mit dem Attribut  #[\SensitiveParameter] markiert wurden, werden dabei ausgeblendet.

Performance-Verbesserungen

Die für die meisten Endanwender interessanteste Verbesserung bei neuen PHP-Versionen betrifft die Performance. Wir konnten in ersten Tests mit WordPress eine Verbesserung der Seitenladezeit von etwa 5% ermitteln.

PHP 8.5 aktivieren

Sie können die PHP-Version 8.5 für die gewünschten Domains entweder im Kundenmenü einstellen, oder per .htaccess-Konfigurationsdatei im Hauptverzeichnis der gewünschten Web-Anwendung mittels folgender Direktive aktivieren:

AddHandler application/x-httpd-php85 .php

Testphase Techaro BotStopper (Anubis)

Seit einiger Zeit beobachten wir auf unseren Webservern eine massive Zunahme verdächtiger HTTP-Zugriffe, deren Zugriffsmuster dem von Web-Crawlern entspricht. Diese Crawler sammeln Daten von Webseiten, Online-Shops, Blogs, Foren usw., um sie für eigene Zwecke zu verwenden. Dabei weisen sie sich jedoch nicht wie üblich im HTTP User Agent Header als Crawler aus, sondern als ganz normale Web-Browser, vermutlich um Sperrungen oder Rate-Limits zu umgehen.

Die Zugriffe erfolgen von vielen unterschiedlichen IP-Adressen und Adressbereichen, viele dieser IP-Adressen gehören nicht zu Servern in Rechenzentren, sondern zu ganz normalen Internet-Anbietern, so dass es keine Hinweise auf die tatsächlichen Urheber dieser Zugriffe gibt. Hinter diesen Zugriffen stecken sehr wahrscheinlich zweifelhafte KI-Firmen, die sehr aggressiv Trainingsdaten für Large Language Modelle sammeln.

Auswirkungen für Webseitenbetreiber

Die schiere Menge dieser Anfragen verursacht auf manchen Webservern eine so hohe CPU-Last, dass die Erreichbarkeit von Webseiten spürbar leidet. Während seriöse Suchmaschinen-Bots wie Google oder Bing einen echten Mehrwert bieten, indem sie Besucher auf Ihre Seiten leiten, sammeln diese Crawler ausschließlich Trainingsdaten für eigene Zwecke – ohne Nutzen für Sie als Webseitenbetreiber.

Unsere Lösung: BotStopper (Anubis)

Für Kunden mit eigenen Webservern (ab Pro.B bzw. Reseller.Dedicated 100) bieten wir ab sofort auf Wunsch einen neuen Bot-Schutz mittels Techaro BotStopper (besser bekannt als Anubis) an. Die Software wird bereits von einigen großen Webseiten eingesetzt, und kann in vielen Fällen kostenpflichtige Dienste wie Cloudflare überflüssig machen.

So funktioniert der Schutz

BotStopper setzt auf ein einfaches Prinzip:

  • Beim ersten Seitenaufruf muss der Browser eine kleine JavaScript-Rechenaufgabe lösen.
  • Während dieser Zeit erscheint kurz eine Prüfseite (ähnlich wie bei Cloudflare).
  • Nach erfolgreicher Prüfung erfolgt eine automatische Weiterleitung zur eigentlichen Webseite.
  • Weitere Aufrufe sind dann ohne Prüfung möglich.

Da die meisten Crawler kein JavaScript beherrschen, scheitern sie an dieser Hürde.
Ausnahmen gibt es für seriöse Crawler wie Google, Bing oder ChatGPT – Ihre Seite bleibt also weiterhin in den relevanten Suchmaschinen sichtbar.

Aktueller Stand und Ausblick

Der BotStopper lässt sich derzeit nur global für alle Domains eines Servers aktivieren. In Zukunft planen wir, ihn auch gezielt für einzelne Domains freischalten zu können.

Wenn Sie BotStopper auf Ihrem Server (ab Pro.B / Dedicated.100) ausprobieren möchten, wenden Sie sich einfach an unsere Kundenbetreuung.

Abschaltung der unverschlüsselten Nutzung unserer Mailserver zum 05. März 2025

Ab dem 05. März 2025 werden wir keine unverschlüsselten Verbindungen und keine Verbindungen mit den veralteten TLS-Versionen (1.0 und 1.1) zu unseren SMTP-, IMAP- und POP3-Servern mehr zulassen. Diese Maßnahme dient dazu, die Sicherheit Ihrer Daten und unserer Systeme zu erhöhen.

Warum diese Änderungen?

Unverschlüsselte Verbindungen stellen ein erhebliches Sicherheitsrisiko dar: Zugangsdaten und E-Mail-Inhalte können einfach abgefangen werden.

Die TLS-Versionen 1.0 und 1.1 gelten seit 2021 als veraltet und werden von aktuellen Betriebssystemen und E-Mail-Programmen ohnehin nicht mehr unterstützt.

Was bedeutet das für Sie?

Die meisten unserer Kundinnen und Kunden müssen nichts tun. E-Mail-Konten, die in den letzten Jahren auf einem PC oder Smartphone eingerichtet wurden, sollten automatisch mit den richtigen Einstellungen für verschlüsselte Verbindungen angelegt worden sein.

Dennoch sollten Sie dies in den Konto-Einstellungen Ihres E-Mail-Programms prüfen. Für die Verbindung zu unseren Servern muss SSL/TLS oder STARTTLS aktiviert sein. Die Standard-Ports lauten:

SMTP
smtp.variomedia.de
IMAP
imap.variomedia.de
POP3
pop3.variomedia.de
STARTTLS587, 25143110
SSL/TLS465993995

Die Nutzung von TLS 1.2 (seit 2008) und neuer wird von den meisten Systemen seit vielen Jahren unterstützt:

  • Microsoft Outlook: ab Version 2016
  • Mozilla Thunderbird: ab Version 52
  • Windows: ab Version 8
  • macOS: ab Version 10.11.6
  • iOS: ab Version 9
  • Android: ab Version 5

Problematisch könnten sehr alte E-Mail-Programme, Betriebssysteme oder IoT-Geräte (z.B. Router, Multifunktionsdrucker, Netzwerkkameras) aus der Zeit vor dem Jahr 2016 sein, die E-Mails über unsere Server verschicken oder abrufen.

Erlaubt eines Ihrer Geräte oder E-Mail-Programme keine verschlüsselten Verbindungen zu Mailservern, sollten Sie prüfen oder beim Hersteller nachfragen, ob es ein entsprechendes Update gibt.

Übergangszeit

Für eine beschränkte Übergangszeit bis zum 30.05.2025 stellen wir alternative SMTP- und IMAP/POP3-Server bereit, die noch TLS 1.0 und 1.1 und unverschlüsselte Verbindungen unterstützen:

ProtokollServername
SMTPsmtp-legacy.variomedia.de
IMAPimap-legacy.variomedia.de
POP3pop3-legacy.variomedia.de

Bei Bekanntwerden schwerwiegender Sicherheitsprobleme mit TLS 1.0 oder 1.1 kann jedoch eine frühere Abschaltung dieser TLS-Versionen erforderlich werden.

Hintergrund: Abschaltung veralteter TLS-Versionen

Transport Layer Security (TLS), auch bekannt unter der Vorgängerbezeichnung Secure Sockets Layer (SSL), ist das am häufigsten verwendete Verschlüsselungsprotokoll zur sicheren Datenübertragung im Internet. Es wird beispielsweise zur verschlüsselten Übertragung von Webseiten (HTTPS) oder E-Mails (SMTPS, IMAPS, POP3S) genutzt.

Die ursprüngliche TLS-Version 1.0 wurde im Jahr 1999 vorgestellt, aktuell ist die TLS-Version 1.3 aus dem Jahr 2018. Die TLS-Versionen 1.0 und 1.1 wurden von der Internet Engineering Task Force (IETF) im März 2021 als veraltet eingestuft und sollten nicht mehr verwendet werden.

Die Unterstützung von TLS 1.0 und 1.1 bei verschlüsselten Webseiten (HTTPS) haben wir aufgrund von Sicherheitsproblemen bereits am 15. Februar 2020 eingestellt. Bei den E-Mail-Protokollen SMTP, IMAP und POP3 unterstützen wir jedoch aus Kompatibilitätsgründen bisher noch diese veralteten TLS-Versionen.

E-Mail-Programme verwenden normalerweise automatisch die aktuellste unterstützte TLS-Version, für die Nutzung einer aktuellen TLS-Version ist daher keine Konfigurationsanpassung erforderlich; es genügt ein aktuelles E-Mail-Programm zu verwenden. TLS 1.0 und 1.1 werden von aktuellen Betriebssystemen und E-Mail-Programmen nicht mehr unterstützt, diese verwenden immer TLS 1.2 oder 1.3.

Momentan können die TLS-Versionen 1.0 und 1.1 im E-Mail-Kontext mit bestimmten Schlüsselaustauschprotokollen und Verschlüsselungsalgorithmen noch ohne gravierende Sicherheitsprobleme genutzt werden, da es für diese bisher keine bekannten Schwachstellen gibt, die über die E-Mail-Protokolle ausgenutzt werden können. Einige bekannte E-Mail-Anbieter wie Google Mail unterstützen aus Kompatibilitätsgründen ebenfalls noch diese veralteten TLS-Versionen.

Im Hinblick auf mögliche Sicherheitsprobleme können wir diese veralteten TLS-Versionen jedoch nicht unbegrenzt weiter unterstützen, da es im Falle von neu entdeckten Problemen keine Updates der betroffenen TLS-Softwarebibliotheken mehr geben wird. Außerdem kann die Nutzung von veralteten TLS-Versionen durch Sicherheitsrichtlinien untersagt sein. Auch Cyberversicherungen untersagen ihren Kundinnen und Kunden vermehrt die Nutzung von Mailservern, die noch die veralteten TLS-Versionen unterstützen.

PHP 8.4 ist verfügbar

Heute wurde die neue PHP-Version 8.4 veröffentlicht. Wir haben diese PHP-Version bereits auf allen Webservern installiert, so dass Sie sie ab jetzt für Ihre Web-Anwendungen verwenden können.

Neuerungen und Verbesserungen

Für viele Anwender:innen zählt vor allem eines: schnellere Ladezeiten durch eine verbesserte Ausführungsgeschwindigkeit. In ersten Tests konnten wir jedoch keine signifikanten Performance-Unterschiede zwischen PHP 8.4 und der Vorgängerversion 8.3 feststellen. Dennoch sind in spezifischen Szenarien spürbare Verbesserungen durchaus möglich.

Eine nützliche Neuerung in PHP 8.4 sind Propery Hooks, dadurch lässt sich redundanter Boilerplate-Code für Get()- und Set()-Methoden reduzieren. Bei folgender Beispielklasse ohne Property Hooks müssen Get()- und Set()-Methoden definiert werden:

class User 
{
    private $name;
 
    public function __construct(string $name) {
        $this->name = $name;
    }
 
    public function getName(): string {
        return $this->name;
    }
 
    public function setName(string $name): void {
         if (strlen($value) === 0) {
                throw new ValueError("Name must be non-empty");
        }
        $this->name = $name;
    }
}

Mit Property Hooks lässt die Klasse wie folgt vereinfachen:

class User 
{
    public string $name {
        set {
            if (strlen($value) === 0) {
                throw new ValueError("Name must be non-empty");
            }
            $this->name = $value;
        }
    }
 
    public function __construct(private string $name) {
        $this->name = $name;
    }
}

Für Arrays gibt es nun 4 zusätzliche Callback-Funktionen array_find(), array_find_key(), array_any() und array_all(). Zur Nutzung dieser Funktionen beachten Sie die folgenden Beispiele:

$array = [
    'a' => 'dog',
    'b' => 'cat',
    'c' => 'cow',
    'd' => 'duck',
    'e' => 'goose',
    'f' => 'elephant'
];
 
// Find the first animal with a name longer than 4 characters.
var_dump(array_find($array, function (string $value) {
    return strlen($value) > 4;
})); // string(5) "goose"

// Find the first animal with a name longer than 4 characters.
var_dump(array_find_key($array, function (string $value) {
    return strlen($value) > 4;
})); // string(1) "e"

// Check, if any animal name is longer than 5 letters.
var_dump(array_any($array, function (string $value) {
    return strlen($value) > 5;
})); // bool(true)

// Check, if all animal names are shorter than 12 letters.
var_dump(array_all($array, function (string $value) {
    return strlen($value) < 12;
})); // bool(true)

Eine weitere Neuerung ist die Unterstützung von HTML5 in der DOM Extension, außerdem wurden in der XML Extension Probleme bei der Verarbeitung großer XML-Dateien behoben.

Entfernung veralteter Extensions

Die veralteten PHP-Extensions IMAP und Pspell wurden in PHP 8.4 entfernt, da die Extensions selbst sowie die zugrundeliegenden Softwarebibliotheken veraltet sind und seit Jahren nicht mehr aktualisiert wurden. Als Alternative zu Pspell kann die Extension Enchant genutzt werden.

Da es in PHP 8.4 kaum schwerwiegende nicht abwärtskompatible Änderungen zur Vorgängerversion 8.3 gibt, sind viele Web-Anwendungen bereits mit PHP 8.4 kompatibel.

Auf der PHP-Webseite finden sie eine vollständige Übersicht über alle nicht abwärtskompatiblen Änderungen und Neuerungen.

PHP 8.4 aktivieren

Sie können PHP 8.4 wie gewohnt über das Kundenmenü oder auf den Webservern per .htaccess-Konfigurationsdatei mittels folgender Direktive auswählen:

AddHandler application/x-httpd-php84 .php

Verlängerung der Sicherheitsunsterstützung

Die PHP-Entwickler haben die Phase der Sicherheitsunsterstützung für ältere PHP-Versionen um ein Jahr auf nun insgesamt zwei Jahre verlängert. Damit wird die PHP-Version 8.1 noch bis zum 31.12.2025 mit Sicherheitsupdates versorgt.
Die PHP-Version 8.2 wechselt ab dem 1.1.2025 in die Phase der Sicherheitsunsterstützung. Ab dann wird es für diese PHP-Version nur noch Updates bei sicherheitskritischen Fehlern geben, andere nicht sicherheitskritische Fehler werden nicht mehr behoben.
Eine Übersicht der Unterstützungsphasen aller PHP-Versionen finden Sie auf der PHP-Webseite.

PHP 8.4 RC1 zum Testen verfügbar

Auf unseren Webservern steht ab heute der erste Release Candidate der kommenden PHP Version 8.4 zum Testen zur Verfügung. Die Release Candidate-Versionen von PHP dienen den PHP-Entwicklern zum Aufspüren von letzten Fehlern und Problemen, bevor die finale Version von PHP 8.4 voraussichtlich gegen Ende November erscheinen wird.

Mit dem Release Candidate können Sie testen, ob die von Ihnen genutzten PHP-Anwendungen bereits mit PHP 8.4 kompatibel sind, für den Produktivbetrieb sollten die Release Candidates jedoch aufgrund eventuell sicherheitsrelevanter Fehler nicht genutzt werden. Bis zur geplanten Veröffentlichung von PHP 8.4 werden planmäßig noch 3 weitere Release Candidate-Versionen erscheinen, die wir dann zeitnah auf den Webservern installieren werden.

Neuerungen in PHP 8.4

Die für viele Endanwender wichtigste Verbesserung bei neuen PHP-Versionen ist eine höhere Ausführungsgeschwindigkeit, wir konnten in ersten Tests jedoch keine signifikanten Performance-Unterschiede zwischen PHP 8.4 und der Vorgängerversion 8.3 feststellen.

Eine nützliche Neuerung in PHP 8.4 sind Propery Hooks, dadurch lässt sich redundanter Boilerplate-Code für Get()- und Set()-Methoden reduzieren. Bei folgender Beispielklasse ohne Property Hooks müssen Get()- und Set()-Methoden definiert werden:

class User 
{
    private $name;
 
    public function __construct(string $name) {
        $this->name = $name;
    }
 
    public function getName(): string {
        return $this->name;
    }
 
    public function setName(string $name): void {
         if (strlen($value) === 0) {
                throw new ValueError("Name must be non-empty");
        }
        $this->name = $name;
    }
}

Mit Property Hooks lässt die Klasse wie folgt vereinfachen:

class User 
{
    public string $name {
        set {
            if (strlen($value) === 0) {
                throw new ValueError("Name must be non-empty");
            }
            $this->name = $value;
        }
    }
 
    public function __construct(private string $name) {
        $this->name = $name;
    }
}

Für Arrays gibt es nun 4 zusätzliche Callback-Funktionen array_find(), array_find_key(), array_any() und array_all(). Beachten Sie dazu folgende Beispiele:

$array = [
    'a' => 'dog',
    'b' => 'cat',
    'c' => 'cow',
    'd' => 'duck',
    'e' => 'goose',
    'f' => 'elephant'
];
 
// Find the first animal with a name longer than 4 characters.
var_dump(array_find($array, function (string $value) {
    return strlen($value) > 4;
})); // string(5) "goose"

// Find the first animal with a name longer than 4 characters.
var_dump(array_find_key($array, function (string $value) {
    return strlen($value) > 4;
})); // string(1) "e"

// Check, if any animal name is longer than 5 letters.
var_dump(array_any($array, function (string $value) {
    return strlen($value) > 5;
})); // bool(true)

// Check, if all animal names are shorter than 12 letters.
var_dump(array_all($array, function (string $value) {
    return strlen($value) < 12;
})); // bool(true)

Eine weitere Neuerung ist die Unterstützung von HTML5 in der DOM Extension, außerdem wurden in der XML Extension Probleme bei der Verarbeitung großer XML-Dateien behoben.

Entfernung veralteter Extensions

Die veralteten PHP-Extensions IMAP und Pspell wurden in PHP 8.4 entfernt, da die Extensions selbst sowie die zugrundeliegenden Softwarebibliotheken veraltet sind und seit Jahren nicht mehr aktualisiert wurden. Als Alternative zu Pspell kann die Extension Enchant genutzt werden.

Da es in PHP 8.4 kaum schwerwiegende nicht abwärtskompatible Änderungen zur Vorgängerversion 8.3 gibt, sollten viele Web-Anwendungen bereits mit PHP 8.4 kompatibel sein.

Eine Übersicht über alle Änderungen und Neuerungen in PHP 8.4 finden sie hier.

PHP 8.4 aktivieren

Sie können PHP 8.4 wie gewohnt über das Kundenmenü oder auf den Webservern per .htaccess-Konfigurationsdatei mittels folgender Direktive auswählen:

AddHandler application/x-httpd-php84 .php

DKIM-Signierung aller ausgehenden E-Mails

Seit einigen Wochen werden ausgehende E-Mails, die über unseren SMTP-Server verschickt werden, automatisch mit dem DKIM-Verfahren (DomainKeys Identified Mail) signiert.

Was ist DKIM?

DKIM ist ein Verfahren zur E-Mail-Authentifizierung, das ausgehende E-Mails mit einer digitalen Signatur versieht. Diese Signatur ermöglicht es dem empfangenden Mailserver zu prüfen, ob die E-Mail tatsächlich von Ihnen stammt und unterwegs nicht manipuliert wurde.

Warum ist DKIM wichtig?

DKIM erhöht die Sicherheit und Zuverlässigkeit Ihrer E-Mail-Kommunikation durch folgende Vorteile:

  • Schutz vor Fälschungen: DKIM verringert die Wahrscheinlichkeit, dass gefälschte E-Mails im Namen Ihrer Domain vom Empfänger akzeptiert werden.
  • Besseres Ansehen Ihrer E-Mails: Viele E-Mail-Provider wie Gmail oder Microsoft bevorzugen signierte E-Mails und stufen sie seltener als Spam ein.
  • Mehr Vertrauen: Empfänger können sicherer sein, dass Ihre E-Mails authentisch und tatsächlich von Ihrer Domain versendet wurden.

Mit der Einführung von DKIM stärken wir die Sicherheit und Vertrauenswürdigkeit Ihrer E-Mail-Kommunikation.

Tipps zur Nutzung von DKIM

Ausführliche Informationen zur Funktionsweise von DKIM, der Nutzung eines Postfachs als SMTP-Relay (Smarthost) sowie der Einbindung externer Domains finden Sie in unserem FAQ-Artikel „Wie kann ich DKIM zur Authentifizierung von ausgehenden E-Mails nutzen?“.

Darüber hinaus bietet DKIM die Grundlage für den Einsatz von DMARC. Mit DMARC können Sie festlegen, wie E-Mails behandelt werden sollen, die mit gefälschten Absendern verschickt wurden. Mehr dazu erfahren Sie in unserem Artikel „Wie erstelle ich eine DMARC-Richtlinie?“.