</> HTML5Advent
ENFRESDEITPT

// hosting · Web Platform Advent #15

PHP-Hosting erklärt: Shared vs. VPS, Versionen und Performance

Worauf Sie bei PHP-Hosting achten sollten — Shared vs. VPS, PHP-Versionen und Erweiterungen, Deployment, .htaccess und Performance mit OPcache — ohne das Marketing-Rauschen.

PHP-Quellcode auf einem dunklen Bildschirm, mit version_compare- und require_once-Anweisungen

PHP treibt nach wie vor einen großen Teil des Webs an, und es zu hosten ist ausgetretener Boden — was genau der Grund ist, warum die Angebote alle gleich aussehen und die echten Unterschiede sich in den Details verstecken. Dieser Leitfaden behandelt die Kriterien, die wirklich zählen: den Kompromiss Shared vs. VPS, PHP-Versionen und Erweiterungen, wie Sie deployen, was .htaccess steuert und die Performance-Stellschrauben, die man kennen sollte.

Shared Hosting vs. VPS

Die erste Entscheidung ist, wie isoliert Ihre Umgebung ist.

  • Shared Hosting — Ihre Site liegt zusammen mit vielen anderen auf einer Maschine, für Sie verwaltet (PHP, Webserver, oft ein Control-Panel). Am günstigsten und einfachsten; Sie geben die Kontrolle über die PHP-Version, Erweiterungen und Server-Konfiguration ab und teilen sich Ressourcen mit den Nachbarn.
  • VPS — ein dedizierter Teil eines Servers mit Root-Zugriff. Sie wählen die PHP-Version, installieren jede Erweiterung, optimieren den Webserver und sind von anderen Mietern nicht betroffen — aber Sie sind für Updates und Sicherheit verantwortlich.

Für eine kleine Site oder ein Standard-CMS reicht Shared Hosting meist aus. Greifen Sie zu einem VPS, wenn Sie einen bestimmten PHP-Build, eigene Erweiterungen, planbarere Performance oder volle Kontrolle über den Stack benötigen.

PHP-Versionen sind wichtig

Die PHP-Version ist kein Detail — neuere Releases sind spürbar schneller und erhalten, entscheidend, weiterhin Sicherheits-Fixes. Eine End-of-Life-Version zu betreiben bedeutet keine Patches mehr. Prüfen Sie stets, welche Versionen ein Host anbietet und ob Sie leicht wechseln können. Die laufende Version lässt sich aus dem Code oder über die CLI auslesen:

<?php
echo phpversion();        // e.g. "8.3.x"
// or a full report:
phpinfo();
php -v

Ein guter Host lässt Sie die PHP-Version pro Site auswählen (oft im Control-Panel) und hält eine Reihe unterstützter Versionen verfügbar, sodass Sie nach Ihrem eigenen Zeitplan aktualisieren können.

Erweiterungen: prüfen, bevor Sie sich festlegen

Die Funktionalität von PHP ist auf Erweiterungen verteilt, und Ihre App hängt wahrscheinlich von mehreren ab — einem Datenbanktreiber, Bildverarbeitung und so weiter. Häufige, die man bei einem Host verifizieren sollte:

  • pdo_mysql / mysqli — MySQL/MariaDB-Anbindung.
  • mbstring — Verarbeitung von Multibyte-Strings, von vielen Frameworks vorausgesetzt.
  • gd oder imagick — Bildverarbeitung.
  • curl, openssl, zip, intl — HTTP-Anfragen, Verschlüsselung, Archive, Lokalisierung.

Listen Sie auf, was auf dem Server tatsächlich geladen ist, mit:

php -m
Hände tippen auf einem Laptop, der PHP-Quellcode in einem Code-Editor anzeigt
Ihre PHP-Version und die geladenen Erweiterungen früh zu prüfen erspart Ihnen, auf einen Server zu deployen, auf dem Ihre Anwendung gar nicht laufen kann.

Deployment und .htaccess

Auf Shared Hosting deployen Sie typischerweise per Datei-Upload (SFTP) oder indem Sie aus Git in das Web-Root ziehen; manche Hosts ergänzen einen Deploy-Schritt im Panel. Unter Apache konfiguriert die Datei .htaccess in Ihrem Web-Root das Verhalten pro Verzeichnis, ohne die Haupt-Server-Konfiguration anzufassen — nützlich für saubere URLs, Weiterleitungen und Caching-Header. Ein gängiges Muster leitet alle Anfragen an einen Front-Controller:

# .htaccess — route everything to index.php (front controller)
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^ index.php [L]

Beachten Sie, dass .htaccess ein Apache-Feature ist. Unter Nginx liegen die entsprechenden Regeln in der Server-Konfiguration, die Sie auf Shared Hosting möglicherweise nicht kontrollieren — ein weiterer Grund, zu wissen, welchen Webserver Ihr Host betreibt.

Performance: OPcache

Der mit Abstand größte PHP-Performance-Gewinn ist OPcache, das kompilierten Bytecode zwischenspeichert, sodass PHP Ihre Skripte nicht bei jeder Anfrage neu parsen und neu kompilieren muss. Die meisten modernen Hosts aktivieren es standardmäßig; es lohnt sich, das zu bestätigen. Typische Einstellungen in php.ini:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=1

In der Produktion können Sie opcache.validate_timestamps=0 setzen, sodass PHP Dateien nie auf Änderungen prüft, und dann den Cache beim Deploy leeren — so holen Sie noch etwas mehr Geschwindigkeit heraus, zum Preis eines nötigen expliziten Cache-Resets.

Kurze Checkliste

KriteriumWas zu fragen ist
IsolationShared (einfach) oder VPS (Kontrolle)?
PHP-VersionUnterstützt, aktuell, wechselbar?
ErweiterungenSind die, die meine App braucht, verfügbar?
WebserverApache (.htaccess) oder Nginx?
PerformanceIst OPcache aktiviert?

PHP-Hosting ist ausgereift, also zerdenken Sie die Markennamen nicht — passen Sie den Host an die echten Anforderungen Ihrer App an: die richtige PHP-Version, die Erweiterungen, von denen Sie abhängen, einen Webserver, den Sie verstehen, und aktiviertes OPcache. Bekommen Sie das richtig hin, ist der Rest größtenteils Geschmackssache.