Wenn du WordPress über Coolify als Docker-Setup betreibst (meist mit MariaDB daneben), stolperst du früher oder später über dasselbe Thema: Du willst schnell mal upload_max_filesize, memory_limit oder max_execution_time erhöhen – aber wo änderst du das, wenn PHP in einem Container läuft? Genau hier hakt es für viele: Änderungen „im Container“ sind oft nicht persistent und nach einem Redeploy wieder weg. In diesem Artikel bekommst du eine einfache, erprobte Anleitung, wie du PHP-Einstellungen in Coolify sauber und dauerhaft setzt – ohne Bastellösungen.
Kurzüberblick: Welche Methode ist die beste?
In Coolify-WordPress-Setups mit Docker gibt es zwei praxistaugliche Wege:
- Empfohlen (persistent & sauber): Eine eigene .ini-Datei per Volume in den PHP-Container mounten.
- Alternative (kleinere Änderungen): Einstellungen per .htaccess (funktioniert nur abhängig von PHP-Handler/Setup und nicht für alles).
Wenn du eine robuste Lösung willst, nimm Methode 1.
Methode 1 (empfohlen): Eigene custom-php.ini in Coolify einbinden
Diese Methode ist ideal, wenn du Einstellungen dauerhaft, übersichtlich und deploy-sicher setzen willst. PHP liest zusätzliche .ini-Dateien im Container aus einem bestimmten Ordner (typischerweise /usr/local/etc/php/conf.d/) – und genau dort mounten wir unsere Datei hinein.
Schritt 1: WordPress-App in Coolify öffnen
- Öffne Coolify.
- Gehe zu deiner WordPress-Anwendung (die App, in der WordPress läuft – nicht MariaDB).
Schritt 2: Compose-Datei bearbeiten
- Wechsle in den Tab Configuration (Konfiguration).
- Klicke auf Edit Compose File (Compose-Datei bearbeiten).
Schritt 3: Volume-Mount für custom-php.ini hinzufügen
Suche in deiner Compose-Datei den wordpress-Service und ergänze unter dem Service einen volumes:-Eintrag, der eine neue Datei in den Container mountet:
services:
wordpress:
# ... andere Einstellungen
volumes:
- ./custom-php.ini:/usr/local/etc/php/conf.d/custom-php.ini
Wichtig:
- Der Pfad im Container (/usr/local/etc/php/conf.d/) ist genau der Ort, aus dem PHP zusätzliche .ini-Dateien lädt.
- Die Datei wird dort alphabetisch eingelesen. custom-php.ini ist dafür perfekt.
Speichere anschließend die Compose-Datei.
Schritt 4: In Coolify den neuen Storage als Datei anlegen
- Gehe in den Tab Persistent Storages (Persistente Speicher).
- Dort sollte jetzt ein neuer Eintrag auftauchen, z. B. custom-php.ini.
- Wähle Convert to a file (In Datei umwandeln).
Damit sorgt Coolify dafür, dass diese Datei persistiert und nicht bei Deployments verschwindet.
Schritt 5: custom-php.ini im Coolify-Editor befüllen
- Klicke auf die neu erstellte Datei custom-php.ini, um sie im Coolify-Editor zu öffnen.
- Trage deine gewünschten PHP-Settings ein, zum Beispiel:
file_uploads = On memory_limit = 256M upload_max_filesize = 64M post_max_size = 64M max_execution_time = 300 max_input_time = 1000
Praxis-Tipp:
- post_max_size sollte mindestens so groß sein wie upload_max_filesize, besser gleich groß.
- Wenn du sehr große Uploads planst, denk auch an mögliche Limits in einem Reverse Proxy (z. B. Nginx/Caddy) – je nach Setup.
Speichere die Datei.
Schritt 6: Redeploy / Neustart, damit PHP die Datei lädt
Damit PHP die neue Konfiguration einliest:
- Starte die Anwendung neu bzw. mache einen Redeploy (je nach Coolify-Workflow).
- Danach sind die Settings aktiv.
Methode 2 (Alternative): PHP-Settings über .htaccess setzen
Manchmal willst du „nur kurz“ ein Limit erhöhen. Dann kannst du es je nach Setup über .htaccess versuchen. Das klappt aber nicht immer, weil es davon abhängt, wie PHP ausgeführt wird (z. B. FPM vs. Apache-Modul) und welche Direktiven überhaupt per .htaccess erlaubt sind.
Wenn dein WordPress im Container mit Apache läuft und .htaccess greift, kannst du z. B. Folgendes ergänzen:
php_value memory_limit 256M php_value upload_max_filesize 64M php_value post_max_size 64M php_value max_execution_time 300 php_value max_input_time 1000
Wichtig:
Wenn du nach dem Speichern einen 500 Internal Server Error bekommst, ist das oft ein Zeichen, dass diese Direktiven in deinem Setup nicht erlaubt sind. Dann: Einträge wieder entfernen und Methode 1 verwenden.
So prüfst du, ob deine Änderungen wirklich aktiv sind
Variante A: WordPress Site Health / Systeminfo
In WordPress kannst du unter:
- Werkzeuge ? Website-Zustand ? Bericht oft Werte wie Memory Limit sehen.
Variante B (sehr zuverlässig): phpinfo()
Wenn du es ganz sicher wissen willst, kannst du (kurzzeitig!) eine Datei phpinfo.php im Webroot anlegen:
<?php phpinfo();
Aufrufen, Werte prüfen – und die Datei danach wieder löschen (Sicherheitsgründe).
Häufige Fehler (und wie du sie vermeidest)
- „Ich hab’s im Container geändert, aber nach Redeploy ist alles weg.“ ? Klassisch. Container sind vergänglich. Nutze persistente Mounts (Methode 1).
- .htaccess macht Error 500 ? Direktiven nicht erlaubt oder falscher PHP-Modus. Nimm Methode 1.
- Upload-Limit bleibt trotz PHP-Anpassung gleich ? Dann limitiert ggf. zusätzlich der Proxy/Ingress. PHP ist nur ein Teil der Kette.
Fazit: Die beste Praxis für WordPress unter Coolify
Wenn du WordPress unter Coolify mit Docker + MariaDB betreibst und PHP sauber konfigurieren willst, ist die Einbindung einer eigenen custom-php.ini über ein persistentes Volume der zuverlässigste Weg. Du bekommst damit eine Lösung, die Updates überlebt, übersichtlich bleibt und sich jederzeit anpassen lässt – genau so, wie man es in Container-Setups haben will.
