Zum Inhalt springen
CitexNodeAnleitungen
Alle Anleitungen

PHP-Einstellungen und .htaccess

Warum .htaccess nicht greift, saubere URLs, Document-Root, Upload-Grenze, gesperrte Pfade und eigene Regeln.

2 Min. LesezeitAktualisiert am 17.10.2026

Kein Apache, keine .htaccess

PHP-Projekte laufen mit FrankenPHP, einem Webserver auf Basis von Caddy. Eine .htaccess liest er nicht. Was dort an Weiterleitungen und Sperren steht, ist bei uns wirkungslos. Die meisten Regeln braucht es nicht, für den Rest gibt es die Einstellungen unten.

Die Einstellungen

Unter Projekteinstellungen → PHP:

Saubere URLs. /kontakt liefert kontakt.php, auch /kontakt/, solange es keinen Ordner kontakt/ gibt. Das ersetzt die übliche RewriteRule aus der .htaccess.

Document-Root. Der Ordner, der im Netz erreichbar ist, etwa public bei Laravel. Leer heißt: das ganze Projekt. Eine Änderung braucht einen neuen Build.

Upload-Grenze. Die größte Datei, die PHP annimmt, in MB, höchstens 256.

Gesperrte Pfade. Ein Pfad je Zeile, etwa /config oder /install. Alles darunter antwortet mit 404. Versteckte Dateien wie .env oder .git sind immer gesperrt, außer /.well-known/.

Eigene Regeln. Für Fälle, die oben nicht abgedeckt sind, schreibst du Caddy-Regeln. Sie stehen vor der PHP-Auslieferung:

caddy
redir /alt /neu 301
header /assets/* Cache-Control "public, max-age=31536000"

Liegt im Repository ein eigenes Caddyfile, nimmt der Build das. Dann greifen die Einstellungen hier nicht, das Dashboard weist darauf hin.

Konfigurationsdateien

Viele PHP-Apps wollen eine Datei mit Zugangsdaten, etwa config/database.php. Die gehört nicht ins Repository. Leg sie unter Konfigurationsdateien an. Mehr dazu in Datenbanken, Dateien und Speicher.