Na also, habe es lösen können. Meine Befürchtungen haben sich bewahrheitet:
PHP nutzte bei mir nicht standardmäßig die System-Locale.
Ich habe dazu folgendes getan:
-
Sicherstellen, dass
de_DE.UTF-8
installiert und verfügbar ist (auskommentieren / hinzufügen in/etc/locale.gen
und anschließendeslocale-gen
) -
Default locale für php-cli setzen (habe es auch direkt für php-fpm gemacht, man weiß ja nie):
Bearbeiten derphp-cli/php.ini
bzw.php-fpm/php.ini
:
intl.default_locale = de_DE.UTF-8
Achtet dabei darauf die richtige Datei zu bearbeiten. Ich nutze beispielweise als PHP-Handler in NGINX PHP 7.4, aber im Terminal PHP 8.0. Im Terminalphp --version
sollte die CLI-Version anzeigen. -
Das
occ
-Skript requiredconsole.php
. Inconsole.php
habe ich die Locale auf den Systemstandard geändert, indem unter die use-Zeilen ein
setlocale(LC_ALL, NULL);
eingefügt wurde. Ich habe das Testweise mal ausprobiert, indem ich stattdessen
echo("Locale: " . setlocale(LC_ALL, NULL));
eingefügt hatte. Dabei habe ich dann endlichde_DE.UTF-8
als Output erhalten.
Stellt aber sicher, dass ihr nursetlocale
schreibt und nichts echo’ed, da in folgenden Zeilen teilweise weitere Headerdaten gesetzt werden, was nach einem Echo nicht erlaubt ist.
Ab hier hat dann occ
keine Fehler mehr geworfen und die Dateien werden endlich richtig eingebunden. Ich werde mal die Tage ein Issue erstellen und den Vorschlag geben, das als Default in Nextcloud zu haben.
@loeffelpan Vielleicht hilft dir das ja auch