PHP Einstellungen in der .htaccess funktionieren nicht mehr
Mit der Umstellung unserer Webhosting-Infrastruktur auf PHP-FPM im Mai 2026 hat sich der Weg geändert, wie PHP-Einstellungen hinterlegt werden. Die wichtigste Änderung: PHP-Direktiven können ab sofort nicht mehr in der Apache-Konfiguration (httpd.conf) oder in der .htaccess gesetzt werden. Diese Anleitung erklärt, welche Alternativen es gibt und wie Sie Ihre bestehende Konfiguration korrekt überführen.
Wo können PHP-Direktiven künftig gesetzt werden?
Es gibt drei Wege, PHP-Einstellungen zu hinterlegen, die unterschiedliche Geltungsbereiche haben:
php.ini unter „Webserver” im Kundenportal (Vertragsmenü > „Webserver” > „php.ini”): Diese Einstellungen gelten für alle Domains Ihres Hosting-Pakets. Hier erklären wir, wie Sie zu den php.ini-Einstellungen kommen.
php.ini pro Domain im Kundenportal (Vertragsmenü > Domain auswählen > „php.ini”): Diese Einstellungen gelten nur für die jeweilige Domain. Das ist für die meisten Anwendungsfälle der einfachste Weg, da keine FTP-Verbindung oder manuelle Dateibearbeitung notwendig ist.
.user.ini auf dem Server: Eine Datei, die Sie per FTP oder SSH direkt auf dem Server ablegen. Sie gilt nur für das Verzeichnis, in dem sie liegt, und alle Unterverzeichnisse. Das ist sinnvoll, wenn Sie Einstellungen verzeichnisspezifisch überschreiben möchten, ohne die globale Konfiguration anzutasten. Wie Sie die .user.ini anlegen, erklären wir weiter unten in dieser Anleitung.
Hinweis: Wenn Sie bisher in der Apache-Konfiguration im Kundenportal PHP-Direktiven über PHP-Flags gesetzt haben, müssen diese künftig in die php.ini im Kundenportal verschoben werden. Der Webserver-Konfigurations-Validator zeigt Ihnen solche inkompatiblen Einträge als Fehler an und verhindert das Speichern, solange sie nicht behoben sind.
Was ändert sich für PHP-Direktiven in der .htaccess?
Wer PHP-Einstellungen bisher direkt in der .htaccess-Datei über php_value oder php_flag gesetzt hat, muss diese in die .user.ini überführen. Das Ablegen einer .htaccess-Direktive vom Typ php_value oder php_flag ist unter PHP-FPM nicht mehr möglich. Solche Einträge werden ignoriert.
Die .user.ini legen Sie dabei im selben Verzeichnis ab, in dem auch Ihre .htaccess liegt.
Was unterscheidet .htaccess und .user.ini im Format?
Das Prinzip bleibt gleich: Sie legen eine Datei im Verzeichnis Ihrer Website ab, und PHP liest die darin enthaltenen Einstellungen. Das Format ist jedoch anders.
In der .htaccess wurden Direktiven so geschrieben:
php_value upload_max_filesize 32M
php_flag display_errors Off
In der .user.ini entfallen die Schlüsselwörter php_value und php_flag. Die Direktiven werden direkt im Format Einstellung = Wert eingetragen:
upload_max_filesize = 32M
display_errors = Off
Die Direktiven selbst bleiben identisch. Nur die vorangestellten Schlüsselwörter fallen weg.
So legen Sie die .user.ini an
Verbinden Sie sich via FTP auf Ihr Webspace
Entweder ganz einfach über unseren WebFTP.
Oder verbinden Sie sich per FTP oder SSH mit Ihrem Webhosting-Paket.
Navigieren Sie in das Verzeichnis, in dem auch Ihre .htaccess liegt (in der Regel das Hauptverzeichnis Ihrer Domain, z.B. /home/www/ihredomain.de/). Wie Sie ermitteln können, welches Verzeichnis mit Ihrer Domain verknüpft ist, erklären wir hier.
Prüfen Sie, ob dort bereits eine Datei namens .user.ini vorhanden ist. Sollten Sie mit einem FTP-Programm arbeiten, überprüfen Sie, ob die Anzeige versteckter Dateien aktiviert ist (Dateien mit führendem Punkt werden oft nicht angezeigt).
Existiert die Datei noch nicht, erstellen Sie eine neue Textdatei und benennen Sie sie exakt .user.ini (mit Punkt am Anfang, ohne weitere Dateiendung). Erstellen Sie die Datei im Zweifel mit einem Quelltext-Editor.
Tragen Sie Ihre gewünschten PHP-Direktiven im Format Einstellung = Wert ein, eine Direktive pro Zeile. Beispiel:
upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 512M
display_errors = Off
Speichern Sie die Datei als .user.ini (der Punkt am Anfang ist sehr wichtig!) ab und laden Sie sie in das Verzeichnis hoch (oder speichern Sie direkt auf dem Server, falls Sie per SSH arbeiten).
Hinweis: Änderungen in der .user.ini werden nicht sofort wirksam. PHP liest die Datei standardmäßig alle 5 Minuten neu ein. Warten Sie nach einer Änderung kurz ab, bevor Sie das Ergebnis prüfen.
Wie prüfen Sie, ob die Einstellungen aktiv sind?
Erstellen Sie eine temporäre PHP-Datei im selben Verzeichnis mit folgendem Inhalt:
<?php phpinfo(); ?>
Benennen Sie die Datei z.B. info.php, laden diese per FTP oder dem WebFTP auf Ihrem Server im Hauptverzeichnis Ihrer Domain hoch und rufen Sie sie im Browser auf, z. B. über ihredomain.de/info.php. In der Ausgabe können Sie unter der jeweiligen Direktive in der Spalte „Local Value” prüfen, ob Ihr eingetragener Wert übernommen wurde.
Wichtig: Löschen Sie die info.php nach der Prüfung wieder vom Server. Die Datei gibt detaillierte Informationen zur Serverkonfiguration aus und sollte nicht dauerhaft öffentlich erreichbar sein.
Was ist, wenn meine .htaccess bereits php_value-Einträge enthält?
Wichtig: Dieser Abschnitt betrifft Änderungen, die Sie nach der Umstellung auf PHP-FPM an Ihrer .htaccess vornehmen. Die initiale Umstellung wird von uns begleitet und bekannte Konflikte werden dabei adressiert. Wir empfehlen jedoch, Ihre Konfiguration nach der Umstellung selbst zu prüfen, da eine vollständige Garantie für alle Einzelfälle nicht möglich ist.
PHP-Direktiven vom Typ php_value oder php_flag in der .htaccess werden unter PHP-FPM nicht mehr verarbeitet. Das kann zwei Auswirkungen haben:
Im Regelfall werden die Direktiven stillschweigend ignoriert: Die Website lädt weiterhin, die gesetzten PHP-Flags greifen jedoch nicht. Da kein offensichtlicher Fehler erscheint, kann das schwer zu erkennen sein und hat direkten Einfluss auf Ihre Applikation, wenn die Einstellungen bewusst gesetzt wurden.
In einzelnen Fällen kann ein fehlerhafter .htaccess-Eintrag dazu führen, dass der Webserver nicht sauber startet. In diesem Fall ist die Website nicht erreichbar. Starten Sie den Webserver manuell neu oder kontaktieren Sie natürlich im Zweifel unseren Support.
Da die Einträge in der .htaccess nicht automatisch validiert werden, empfehlen wir dringend, Ihre Konfiguration nach der Umstellung zu prüfen. Konsultieren Sie dazu auch das Error-Log Ihres Hosting-Pakets, um mögliche Fehler frühzeitig zu erkennen.
Gehen Sie zur Bereinigung so vor:
Öffnen Sie Ihre .htaccess-Datei und suchen Sie nach Zeilen, die mit php_value oder php_flag beginnen.
Übertragen Sie diese Einstellungen in die .user.ini im oben beschriebenen Format oder tragen Sie sie alternativ in die php.ini pro Domain im Kundenportal ein.
Entfernen Sie die php_value- und php_flag-Zeilen anschließend aus der.htaccess.
Das unterscheidet sich von PHP-Direktiven in der Apache-Konfiguration (httpd.conf):
Solche Einträge werden dort durch den Webserver-Konfigurations-Validator direkt als Fehler angezeigt und verhindern das Speichern der Konfiguration, sodass der Fehler sofort sichtbar ist.
Hinweis: Der Validator prüft aktuell inkompatible PHP-Direktiven in der Webserver-Konfiguration. Wir arbeiten daran, ihn künftig um weitere funktionale Checks zu erweitern, damit Sie Konfigurationsfehler noch früher erkennen können.
Mögliche weitere Probleme nach der PHP Umstellung und wie Sie diese beheben
Uploads funktionieren plötzlich nicht mehr oder brechen ab
Mögliches Fehlverhalten:
Es ist nicht möglich, größere Dateien über ein CMS wie WordPress, Joomla, ein Formular, ein Shopsystem oder ein eigenes Skript hochzuladen. Der Upload bricht ab oder es erscheint eine Meldung wie „Datei zu groß“ oder „Upload fehlgeschlagen“.
Wahrscheinlicher Grund:
Bisher wurden Werte wie upload_max_filesize oder post_max_size in der .htaccess per php_value gesetzt. Diese Einträge werden nach der Umstellung auf PHP FPM nicht mehr verarbeitet.
Lösungsansatz:
Die alten Werte aus der .htaccess müssen in die .user.ini oder in die php.ini im Kundenportal übertragen werden.
Beispiel für die .user.ini:
upload_max_filesize = 64M
post_max_size = 64M
Danach sollte die .htaccess von den alten php_value Einträgen bereinigt werden.
Die Website zeigt Speicherfehler oder lädt nicht vollständig
Mögliches Fehlverhalten:
Die Website zeigt einen Fehler wie „Allowed memory size exhausted“, bleibt weiß, lädt nur teilweise oder bestimmte Plugins und Themes funktionieren nicht mehr korrekt.
Wahrscheinlicher Grund:
Das PHP Speicherlimit wurde vorher über die .htaccess gesetzt, zum Beispiel mit php_value memory_limit 512M. Dieser Wert greift nach der Umstellung nicht mehr.
Lösungsansatz:
Das Speicherlimit sollte in der .user.ini oder in der Domain php.ini im Kundenportal gesetzt werden.
Beispiel:
memory_limit = 512M
Zusätzlich sollte geprüft werden, ob im Error Log weitere Hinweise auf Speicherprobleme vorhanden sind.
Kontaktformulare, Shopbestellungen oder große Formulare funktionieren nicht mehr richtig
Mögliches Fehlverhalten:
Formulare werden nicht abgeschickt, Eingaben fehlen nach dem Absenden oder komplexe Formulare in WordPress, WooCommerce, Joomla oder anderen Anwendungen funktionieren nicht mehr vollständig.
Wahrscheinlicher Grund:
Die maximale Anzahl an Eingabevariablen wurde vorher über die .htaccess gesetzt, zum Beispiel mit php_value max_input_vars 3000. Nach der Umstellung wird dieser Eintrag ignoriert.
Lösungsansatz:
Der Wert sollte in die .user.ini oder in die php.ini der betroffenen Domain übernommen werden.
Beispiel:
max_input_vars = 3000
Bei sehr umfangreichen Formularen kann auch ein höherer Wert sinnvoll sein. Änderungen in der .user.ini werden nicht sofort aktiv, sondern nach kurzer Wartezeit übernommen.
Skripte brechen wegen zu kurzer Laufzeit ab
Mögliches Fehlverhalten:
Backups, Updates, Importvorgänge, Cronjobs oder Datenbankimporte brechen plötzlich ab. Häufig erscheint dabei eine Zeitüberschreitung oder ein Timeout Fehler.
Wahrscheinlicher Grund:
Die maximale Ausführungszeit wurde bisher über die .htaccess gesetzt, zum Beispiel mit php_value max_execution_time 120. Unter PHP FPM muss dieser Wert anders hinterlegt werden.
Lösungsansatz:
Die Laufzeit sollte in der .user.ini oder in der passenden php.ini gesetzt werden.
Beispiel:
max_execution_time = 120
Falls weiterhin Timeouts auftreten, sollte zusätzlich geprüft werden, ob auch die Anwendung selbst oder ein Plugin eigene Zeitlimits verwendet.
Änderungen an PHP Einstellungen scheinen nicht zu wirken
Mögliches Fehlverhalten:
Nach Änderungen der Werte ist keine Veränderung zu erkennen. Zum Beispiel bleibt das Upload Limit gleich oder die Website verwendet weiterhin alte PHP Werte.
Wahrscheinlicher Grund:
Es gibt mehrere mögliche Ursachen:
Die Einstellung wurde weiterhin in der .htaccess gesetzt.
Die .user.ini liegt im falschen Verzeichnis.Die Datei wurde falsch benannt, zum Beispiel user.ini statt .user.ini.
Der FTP Client zeigt versteckte Dateien nicht an.
Die Änderung wurde geprüft, bevor PHP die .user.ini neu eingelesen hat.
Es gibt selbe Einträge mit abweichenden Einstellungen in der php.ini-Einstellung im Kundenportal.
Lösungsansatz:
Die .user.ini muss im richtigen Verzeichnis liegen, in der Regel dort, wo auch die .htaccess der Website liegt. Der Dateiname muss exakt .user.ini lauten. PHP Einstellungen müssen im Format Einstellung = Wert eingetragen werden. Danach sollte einige Minuten gewartet und die Einstellung über eine temporäre phpinfo-Datei geprüft werden. Außerdem sollten in der php.ini-Einstellung im Kundenportal keine selben Einträge mit abweichenden Einstellungen bestehen.
Wir hoffen, Ihnen konnte dieser Artikel weiterhelfen! 😊
Sollte dies nicht der Fall sein, wenden Sie sich gerne an den Support per Mail, Live-Chat oder Telefon.
Mehr Infos und Kontaktdaten unter: www.webgo.de/support
➡️ Für Verbesserungen oder Vorschläge von FAQ Themen schicken Sie uns eine Mail an faq@webgo.de
War dieser Beitrag hilfreich?
Ihre Bewertung hilft uns, unsere Anleitungen weiter zu verbessern.