После очередных перенастроек сервера выскочила такая проблема, что Nextcloud перестал видеть локали.
Поскольку система Debain 12, то казалось бы ответ должен быть, но нет.
Решение подсказала нейросеть от гугла. Ниже цитирую ответ:
Настройте веб-сервер (критично для Debian)
Даже с установленными локалями Nextcloud может их не «видеть».
Если у вас Apache:
Отредактируйте файл переменных окружения:
bash
sudo nano /etc/apache2/envvars
Используйте код с осторожностью.
Найдите строку . /etc/default/locale (она может быть закомментирована) и убедитесь, что она активна, или добавьте в конец файла:
bash
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Используйте код с осторожностью.
После этого перезапустите Apache: sudo systemctl restart apache2.
Если у вас Nginx + PHP-FPM:
Вам нужно разрешить PHP использовать системные переменные. Отредактируйте конфиг пула (обычно www.conf):
bash
sudo nano /etc/php/8.2/fpm/pool.d/www.conf
Используйте код с осторожностью.
Найдите и раскомментируйте (уберите ;) следующие строки:
ini
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmp
Используйте код с осторожностью.
Затем перезапустите PHP-FPM: sudo systemctl restart php8.2-fpm.
3. Настройка в самом Nextcloud (опционально)
Если ошибка сохраняется, можно принудительно указать локаль в конфиге Nextcloud:
bash
sudo -u www-data php /var/www/nextcloud/occ config:system:set default_phone_region --value="RU"
Используйте код с осторожностью.
(Замените RU на код вашей страны, если нужно).
Google AI (c)