Во время звонка ошибка сервера

The admin logging page is also blank with loading spinner.

Steps to reproduce

  1. Installed Nextcloud 14 (fresh install)
  2. Logged in
  3. Clicked on Apps menu item / Click on Logging

Expected behaviour

Apps page should load. Should be able to disable/enable apps and browse apps to download and install. Logging page should load.

Actual behaviour

Apps pages are blank with just the circle loading animation. An error that is repeated three times appears in the notifications at the top of the screen, “An error occured during the request. Unable to proceed.”.
Screenshot: https://help.nextcloud.com/uploads/default/original/2X/0/0534e4916e1c5483ca4900886c043f9e3bffad89.png
The admin Logging page is the same but does not have errors appear. It is just blank with the loading spinner.

Server configuration

Operating system: Shared hosting, I think Cloud Linux (kernel 3.10.0-714.10.2.lve1.4.74.el7.x86_64)

Web server: Apache 2.4.34 (nginx service is also running)

Database: MySQL 5.6.40

PHP version: 7.2.10

PHP info: https://intothegarbagechuteflyboy.net/phpinfo.php

Nextcloud version: (see Nextcloud admin page) 14.0.0

Updated from an older Nextcloud/ownCloud or fresh install: FRESH (I did try upgrading from 13.0.5 but had issues with the calendar and contacts apps being disabled and reset. Installing apps kept failing so I decided to start fresh.

Where did you install Nextcloud from: Softaculous (cPanel)

Login as admin user into your Nextcloud and access
http://example.com/index.php/settings/integrity/failed
paste the results here.

No errors have been found.

List of activated apps:
Can’t access apps. But all the default ones that are activated on fresh install.

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

Don’t have access (shared hosting)

Nextcloud configuration:

config.php

<?php
$CONFIG = array (
  'instanceid' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'passwordsalt' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'secret' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'trusted_domains' => 
  array (
    0 => 'intothegarbagechuteflyboy.net',
  ),
  'datadirectory' => '/home/intothegarbage/nextclouddata',
  'dbtype' => 'mysql',
  'version' => '14.0.0.19',
  'overwrite.cli.url' => 'https://intothegarbagechuteflyboy.net/nextcloud',
  'dbname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbpassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'installed' => true,
  'mail_smtpmode' => 'smtp',
  'mail_smtpsecure' => 'ssl',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_from_address' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_domain' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpauth' => 1,
  'mail_smtphost' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpport' => '465',
  'mail_smtpname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtppassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'memcache.local' => 'OCMemcacheAPCu',
);

Are you using external storage, if yes which one: N/A

Are you using encryption: NO

Are you using an external user-backend, if yes which one: Not yet but would be webdav

Client configuration

Browser: Firefox 62

Operating system: Arch Linux

Logs

Web server error log

I only have access to home/user/logs files. This log also dates back to the 13.0.5 install which had issues with webdav
Web server error log: https://intothegarbagechuteflyboy.net/intothegarbagechuteflyboy.net-Sep-2018.log

Nextcloud log (data/nextcloud.log)

The only issue in this log is a warning about intl falback which I have fixed by enabling the intl module. Since doing that there is nothing more in the log. Below is the last log entry.

Nextcloud log

{"reqId":"W6HuwlSYVdZD449RsLAVdQAAAM0","level":3,"time":"2018-09-19T06:37:55+00:00","remoteAddr":"121.99.121.82","user":"stormrose","app":"PHP","method":"GET","url":"/nextcloud/ocs/v2.php/apps/notifications/api/v2/notifications","message":"You are using a fallback implementation of the intl extension. Installing the native one is highly recommended instead. at /home/intothegarbage/public_html/nextcloud/3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/intl.php#18","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0","version":"14.0.0.19"}

Browser log

Browser console log

Content Security Policy: The page’s settings blocked the loading of a resource at data:font/woff;base64,d09GRgABAAAAAIw4AB... (“font-src”).
JQMIGRATE: Migrate is installed, version 1.4.0 jquery-migrate.min.js:2:542
New search handler registered search.js:66:4
Shutting down notifications: [500] Internal Server Error App.vue:144
_fetch/<
App.vue:144
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2

Browser network har file:

http://intothegarbagechuteflyboy.net/Archive%2018-09-20%2016-31-55.har

The admin logging page is also blank with loading spinner.

Steps to reproduce

  1. Installed Nextcloud 14 (fresh install)
  2. Logged in
  3. Clicked on Apps menu item / Click on Logging

Expected behaviour

Apps page should load. Should be able to disable/enable apps and browse apps to download and install. Logging page should load.

Actual behaviour

Apps pages are blank with just the circle loading animation. An error that is repeated three times appears in the notifications at the top of the screen, “An error occured during the request. Unable to proceed.”.
Screenshot: https://help.nextcloud.com/uploads/default/original/2X/0/0534e4916e1c5483ca4900886c043f9e3bffad89.png
The admin Logging page is the same but does not have errors appear. It is just blank with the loading spinner.

Server configuration

Operating system: Shared hosting, I think Cloud Linux (kernel 3.10.0-714.10.2.lve1.4.74.el7.x86_64)

Web server: Apache 2.4.34 (nginx service is also running)

Database: MySQL 5.6.40

PHP version: 7.2.10

PHP info: https://intothegarbagechuteflyboy.net/phpinfo.php

Nextcloud version: (see Nextcloud admin page) 14.0.0

Updated from an older Nextcloud/ownCloud or fresh install: FRESH (I did try upgrading from 13.0.5 but had issues with the calendar and contacts apps being disabled and reset. Installing apps kept failing so I decided to start fresh.

Where did you install Nextcloud from: Softaculous (cPanel)

Login as admin user into your Nextcloud and access
http://example.com/index.php/settings/integrity/failed
paste the results here.

No errors have been found.

List of activated apps:
Can’t access apps. But all the default ones that are activated on fresh install.

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

Don’t have access (shared hosting)

Nextcloud configuration:

config.php

<?php
$CONFIG = array (
  'instanceid' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'passwordsalt' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'secret' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'trusted_domains' => 
  array (
    0 => 'intothegarbagechuteflyboy.net',
  ),
  'datadirectory' => '/home/intothegarbage/nextclouddata',
  'dbtype' => 'mysql',
  'version' => '14.0.0.19',
  'overwrite.cli.url' => 'https://intothegarbagechuteflyboy.net/nextcloud',
  'dbname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbpassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'installed' => true,
  'mail_smtpmode' => 'smtp',
  'mail_smtpsecure' => 'ssl',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_from_address' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_domain' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpauth' => 1,
  'mail_smtphost' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpport' => '465',
  'mail_smtpname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtppassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'memcache.local' => 'OCMemcacheAPCu',
);

Are you using external storage, if yes which one: N/A

Are you using encryption: NO

Are you using an external user-backend, if yes which one: Not yet but would be webdav

Client configuration

Browser: Firefox 62

Operating system: Arch Linux

Logs

Web server error log

I only have access to home/user/logs files. This log also dates back to the 13.0.5 install which had issues with webdav
Web server error log: https://intothegarbagechuteflyboy.net/intothegarbagechuteflyboy.net-Sep-2018.log

Nextcloud log (data/nextcloud.log)

The only issue in this log is a warning about intl falback which I have fixed by enabling the intl module. Since doing that there is nothing more in the log. Below is the last log entry.

Nextcloud log

{"reqId":"W6HuwlSYVdZD449RsLAVdQAAAM0","level":3,"time":"2018-09-19T06:37:55+00:00","remoteAddr":"121.99.121.82","user":"stormrose","app":"PHP","method":"GET","url":"/nextcloud/ocs/v2.php/apps/notifications/api/v2/notifications","message":"You are using a fallback implementation of the intl extension. Installing the native one is highly recommended instead. at /home/intothegarbage/public_html/nextcloud/3rdparty/patchwork/utf8/src/Patchwork/Utf8/Bootup/intl.php#18","userAgent":"Mozilla/5.0 (X11; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0","version":"14.0.0.19"}

Browser log

Browser console log

Content Security Policy: The page’s settings blocked the loading of a resource at data:font/woff;base64,d09GRgABAAAAAIw4AB... (“font-src”).
JQMIGRATE: Migrate is installed, version 1.4.0 jquery-migrate.min.js:2:542
New search handler registered search.js:66:4
Shutting down notifications: [500] Internal Server Error App.vue:144
_fetch/<
App.vue:144
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2

Browser network har file:

http://intothegarbagechuteflyboy.net/Archive%2018-09-20%2016-31-55.har

После установки Nextcloud им можно сразу же пользоваться. (А если вы здесь по вопросу отключения техобслуживания Nextcloud, то вот команда — sudo -u www-data php /path/to/nextcloud/occ maintenance:mode —off (перед off ставьте два дефиса) )

Но, если вам хочется большей производительности, а также не хочется видеть предупреждение о текущей конфигурации, которое будет видно каждый раз при заходе в административную панель, то следующие советы для вас.

Как и ранее я писал, Nextcloud стоит на Ubuntu 18.04 и работает под связкой nginx + php-fpm (версии 7.4) + mysql. Язык интерфейса — русский. Nextcloud установлен в /usr/share/nginx/nextcloud/

После внесения изменений не забываем перезапускать php-fpm. Или можете после применения всех изменений перезапустить его один раз.

Содержание:

  1. PHP не настроен правильно для получения переменных системного окружения.
  2. PHP OPcache не настроен правильно
  3. Некоторые индексы базы данных не были преобразованы в тип big int
  4. Разрешённое максимальное значение использования памяти PHP ниже рекомендуемого значения в 512 МБ
  5. Не настроена система кеширования
  6. В базе данных отсутствуют некоторые индексы
  7. MySQL используется в качестве базы данных, но не поддерживает 4-байтовые символы
  8. Задействован устаревший режим шифрования файлов на стороне сервера
  9. Настройка обратного прокси для доступа
  10. Заголовок HTTP «X-Frame-Options» не настроен на значение «SAMEORIGIN»
  11. Новый dashboard
  12. Модуль php-imagick и SVG
  13. Регион размещения сервера

Убираем первое предупреждение:

«PHP не настроен правильно для получения переменных системного окружения.

Запрос getenv(«PATH») возвращает пустые результаты.
Обратитесь к разделу о конфигурации PHP и примечаниям к конфигурации
PHP из руководства по установке. Обратите внимание на настройку
параметров PHP, особенно при использовании механизма php-fpm.»

Как сказано в документации

Когда вы используете php-fpm, системные переменные среды, такие как PATH, TMP или другие, не заполняются автоматически так же, как при использовании php-cli. Вызов функции PHP, такой как getenv(‘PATH’); может возвращать пустой результат. Поэтому вам может потребоваться вручную настроить переменные среды в файле конфигурации php-fpm.

Редактируем файл /etc/php/7.4/fpm/pool.d/www.conf

Ищем такие строки:

;env[HOSTNAME] = $HOSTNAME
;env[PATH] = /usr/local/bin:/usr/bin:/bin
;env[TMP] = /tmp
;env[TMPDIR] = /tmp
;env[TEMP] = /tmp

И раскомментируем их.

Или, если побыстрее

sed -i -e "s/;env[/env[/g" 
/etc/php/7.4/fpm/pool.d/www.conf

Не забываем перезапустить php-fpm

systemctl restart php7.4-fpm

Готово. Идём дальше.

К оглавлению

Убираем второе предупреждение

«PHP OPcache не настроен правильно»

 Для обеспечения лучшей производительности рекомендуется задать в файле php.ini следующие параметры настроек:

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

Заменим вручную вышеуказанные параметры в файле /etc/php/7.4/fpm/php.ini или сразу заменим значения sed’ом

sed -i -e "s/;opcache.enable=1/opcache.enable=1/g" 
/etc/php/7.4/fpm/php.ini
sed -i -e "s/;opcache.enable_cli=0/opcache.enable_cli=1/g" 
/etc/php/7.4/fpm/php.ini
sed -i -e "s/;opcache.interned_strings_buffer=8/opcache.interned_strings_buffer=8/g" 
/etc/php/7.4/fpm/php.ini
 sed -i -e "s/;opcache.max_accelerated_files=10000/opcache.max_accelerated_files=10000/g" 
/etc/php/7.4/fpm/php.ini
sed -i -e "s/;opcache.memory_consumption=128/opcache.memory_consumption=128/g" 
/etc/php/7.4/fpm/php.ini
sed -i -e "s/;opcache.save_comments=1/opcache.save_comments=1/g" 
/etc/php/7.4/fpm/php.ini
sed -i -e "s/;opcache.revalidate_freq=2/opcache.revalidate_freq=1/g" 
/etc/php/7.4/fpm/php.ini

К оглавлению

Убираем третье предупреждение

Некоторые индексы базы данных не были преобразованы в тип big int


Так как преобразование таких индексов может занять продолжительное время, оно должно быть запущенно вручную. Чтобы выполнить преобразование, необходимо включить режим обслуживания и запустить в терминале команду «occ db:convert-filecache-bigint». Дополнительные сведения приведены на соответствующей странице документации.filecache.mtime
filecache.storage_mtime

Для того, чтобы не потерять данные, или чтобы не было ошибок на клиентах, или просто для спокойствия нервной системы введите Nextcloud в режим обслуживания.

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --on

В браузере вы можете увидеть, что система находится в режиме обслуживания. Теперь в консоли выполните следующее:

sudo -u www-data php /usr/share/nginx/nextcloud/occ db:convert-filecache-bigint --no-interaction

Затем выключите режим обслуживания.

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --off

К оглавлению

Убираем предупреждение о php

Разрешённое максимальное значение использования памяти PHP ниже рекомендуемого значения в 512 МБ.

sudo nano /etc/php/7.4/fpm/php.ini

Ищем memory_limit и вводим, например, 512M вместо 128M. И перезапускаем php-fpm

или если хотим побыстрее

sed -i -e "s/memory_limit = 128M/memory_limit = 512M/g" /etc/php/7.4/fpm/php.ini
sudo systemctl restart php7.4-fpm

К оглавлению

Убираем предупреждение о кешировании.

Не настроена система кеширования

Для увеличения производительности сервера, по возможности, настройте memcache. Более подробная информация доступна в документации

Поэтому прикручиваем систему кэширования, состоящую из локальной системы кэширования на основе APCu и системы распределённого кеширования Redis.

Ставим APCu

 sudo apt install php-apcu -y

В файле php.ini включаем apcu

sudo nano /etc/php/7.4/cli/php.ini

вставив в начало

apc.enable_cli=1

Сохраняем файл и перезапускаем php-fpm.

sudo systemctl restart php7.4-fpm

Редактируем файл config/config.php в директории установки Nextсloud

sudo nano /usr/share/nginx/nextcloud/config/config.php

и вставляем следующую строку перед закрывающем скобкой «);»

'memcache.local' => 'OCMemcacheAPCu',

Ставим Redis.

sudo apt install redis-server php-redis -y

Проверяем, что он запустился

ps ax | grep redis
15758 ? Ssl 0:00 /usr/bin/redis-server 127.0.0.1:6379

В тот же файл config/config.php

sudo nano /usr/share/nginx/nextcloud/config/config.php

вставьте следующее опять перед закрывающей скобкой «);»

  'memcache.distributed' => 'OCMemcacheRedis',
'redis' =>
array (
'host' => '127.0.0.1',
'port' => 6379,
),
'memcache.locking' => 'OCMemcacheRedis',

Сохраняем файл. Перезапускаем php-fpm, если вы это ещё не сделали и наслаждаемся ускоренной работе Nextcloud.

P.S. Если при консольном выполнении команд вы получаете такое сообщение:

OCHintException: [0]: Memcache OCMemcacheAPCu not available for local cache (Is the matching PHP module installed and enabled?)

то тогда пропишите в файл php.ini, который находится по пути /etc/php/7.4/cli следующий текст

apc.enable_cli=1

Ошибка должна исчезнуть

К оглавлению

Убираем ошибку отсутствия индексов

В базе данных отсутствуют некоторые индексы. 

Так как создание таких индексов может занять достаточно продолжительное время, оно должно быть запущено вручную. Для создания индексов необходимо запустить команду «occ db:add-missing-indices» во время работы сервера Nextcloud. При созданных индексах, как правило, запросы к базе данных выполняются значительно быстрее.

Выполняем

sudo -u www-data php /usr/share/nginx/nextcloud/occ db:add-missing-indices

При успешном индексировании будет следующий текст:

Check indices of the share table.
Check indices of the filecache table.
Check indices of the twofactor_providers table.
Check indices of the login_flow_v2 table.
Check indices of the whats_new table.
Check indices of the cards table.
Check indices of the cards_properties table.
Check indices of the calendarobjects_props table.
Adding calendarobject_calid_index index to the calendarobjects_props table, this can take some time…
calendarobjects_props table updated successfully.
Check indices of the schedulingobjects table.
Adding schedulobj_principuri_index index to the schedulingobjects table, this can take some time…
schedulingobjects table updated successfully.

Некоторые индексы базы данных не были преобразованы в тип big int.

Так как преобразование таких индексов может занять продолжительное время, оно должно быть запущенно вручную. Чтобы выполнить преобразование, необходимо включить режим обслуживания и запустить в терминале команду «occ db:convert-filecache-bigint». Дополнительные сведения приведены на соответствующей странице документации.

Вводим сервер в режим обслуживания и выполняем преобразование

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --on
sudo -u www-data php /usr/share/nginx/nextcloud/occ db:convert-filecache-bigint

Появится сообщение

Nextcloud is in maintenance mode - no apps have been loaded
Following columns will be updated:
mounts.storage_id
mounts.root_id
mounts.mount_id
This can take up to hours, depending on the number of files in your instance!
Continue with the conversion (y/n)? [n]

Вводим «y»

И выводим из режима обслуживания

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --off

К оглавлению

Убираем предупреждение о 4-х байтовых символах

MySQL используется в качестве базы данных, но не поддерживает 4-байтовые символы.

Чтобы иметь возможность обрабатывать 4-байтовые символы (например, смайлики) без проблем в именах файлов или комментариях, рекомендуется включить 4-байтовую поддержку в MySQL. Для получения более подробной информации обратитесь к документации.

Так как первоначально Nextcloud я ставил на базе MariaDB, то по ссылке выше для возможности обработки ошибки я не заметил продолжение про MariaDB, а сразу стал применять шаги для MySQL. Не надо так. Поэтому распишу по шагам, что и как надо делать.

P.S. Убедитесь, что MariaDB версии выше 10.2. У меня была версия 15.1

Убедитесь, что на вашем сервере MySQL установлены следующие параметры InnoDB в файле:

sudo nano /etc/mysql/mariadb.cnf
[mysqld]
innodb_large_prefix=true
innodb_file_format=barracuda
innodb_file_per_table=1

и если их нет, то вставьте в конец файла.

Перезапустите сервер MariaDB

sudo systemctl restart mariadb

Выясните был ли изменён формат файла на Barracuda

sudo mariadb
SELECT NAME, SPACE, FILE_FORMAT FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME like "nextcloud%";

Если формат файла — «barracuda» для каждой отдельной таблицы, то ничего особенного не остается делать. Продолжайте с инструкциями для MySQL. Во время тестирования формат файла всех таблиц был “Antelope”.

Таблицы должны быть перенесены в “barracuda” вручную, одна за другой. Однако команды SQL можно легко создавать:

USE INFORMATION_SCHEMA;
SELECT CONCAT("ALTER TABLE `", TABLE_SCHEMA,"`.`", TABLE_NAME, "` ROW_FORMAT=DYNAMIC;") AS MySQLCMD FROM TABLES WHERE TABLE_SCHEMA = "nextcloud";

Скопируйте появившийся ответ и уберите в нем символ «|». После этого вставляйте текст в консоль mariadb

После всего проделанного формат файла должен поменяться на Barracuda. Проверим.

SELECT NAME, SPACE, FILE_FORMAT FROM INFORMATION_SCHEMA.INNODB_SYS_TABLES WHERE NAME like "nextcloud%";
exit;

Инструкции для MySQL

Вводим в режим обслуживания.

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --on
sudo mariadb
ALTER DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
exit;
sudo -u www-data php /usr/share/nginx/nextcloud/occ config:system:set mysql.utf8mb4 --type boolean --value="true"

Должен быть такой результат

Nextcloud is in maintenance mode - no apps have been loaded

System config value mysql.utf8mb4 set to boolean true

Запускаем конвертацию

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:repair

Отключаем режим обслуживания.

sudo -u www-data php /usr/share/nginx/nextcloud/occ maintenance:mode --off

К оглавлению

Режим шифрования

Задействован устаревший режим шифрования файлов на стороне сервера.

Рекомендуется отключить такое шифрование. Более подробные сведения содержатся в документации.

Как я понял, устаревший режим шифрования был введён в ранних версиях Nextcloud и впоследствии заменён на новый. Однако в хранилище могли остаться файлы со старым (legacy) типом шифрования.

В документации сказано, что найти эти файлы можно командой

occ encryption:scan:legacy-format

или более полный вариант

sudo -u www-data php /usr/share/nginx/nextcloud/occ encryption:scan:legacy-format

В процессе сканирования occ начнёт искать файлы со старым типом шифрования или если в базе такие файлы отсутствуют, выдаст предупреждение, «does not have a proper header«.

Такие файлы я просто заменил копиями тех, у кого есть нужные заголовки. Так как таких файлов у меня просто не было.

После этого в файле config.php можно отключить поддержку устаревшего формата шифрования, удалив строку

'encryption.legacy_format_support' => true,

или, выставив значение false вместо true

С самими файлами в хранилище ничего не произойдёт, они так же будут зашифрованы как и раньше. В данном случае, мы просто отключили поддержку старого режима шифрования.

К оглавлению

Настройка обратного прокси для доступа

Для доступа к файлам, используя обратный прокси, особых настроек делать не надо, достаточно в директиве proxy_pass указать IP сервера с Nextcloud. Однако, если вы используете клиент Nextcloud, то он при авторизации запустит окно браузера с IP сервера Nextcloud, а не его доменным именем. Чтобы это исправить, делаем следующее:

Для примера IP обратного прокси — 192.168.0.1, IP Nextcloud-сервера — 192.168.0.2

В файле nextcloud/config/config.php

'trusted_domains' =>
array (
0 => '192.168.0.2',
1 => '192.168.0.1',
),
'overwritehost' => 'domain.name.example.org',
'overwriteprotocol' => 'https',
'overwritewebroot' => '',
'overwritecondaddr' => '^192.168.0.1$',
'overwrite.cli.url' => 'https://domain.name.example.org',
'trusted_proxies' =>
array (
    0 => '192.168.0.1',
),

Таким образом, опция trusted_proxies исправляет проблему «Заголовки обратного прокси настроены неправильно, либо вы подключены к серверу Nextcloud через доверенный прокси«

К оглавлению

Уведомление о HTTP «X-Frame-Options»

Заголовок HTTP «X-Frame-Options» не настроен на значение «SAMEORIGIN».

Это потенциальная проблема безопасности для устранения которой рекомендуется задать этот параметр.

Для этого добавьте в файл конфигурации nginx на стороне nextcloud следующее содержимое в секцию server

add_header X-Frame-Options "SAMEORIGIN";

Веб-сервер не настроен должным образом для разрешения «/.well-known/caldav». .

Дополнительная информация может быть найдена в нашей документации

В конфиге nextcloud в статье есть строки с настройкой доступа к этому пути. Для удобства повторю тут

 location = /.well-known/carddav {
         return 301 $scheme://$host/remote.php/dav;
     }

     location = /.well-known/caldav {
        return 301 $scheme://$host/remote.php/dav;
     }

К оглавлению

Новый dashboard

Следующая опция для тех, кто обновился до 20 версии и при заходе на главную облака видит новый dashboard вместо знакомого списка файлов.

Исправляется просто добавлением в файл config.php следующей строки

'defaultapp' => 'files',

К оглавлению

Модуль php-imagick и SVG

Модуль php-imagick в этом случае не поддерживает SVG.

Для лучшей совместимости рекомендуется установить его

После установки или обновления Nextcloud до 21 версии появится сообщение об ошибке в модуле php-imagick. И хотя само расширение для php установлено, может статься, что в системе не установлен пакет приложения imagemagick. Поэтому ставим его через apt

apt install imagemagick

В русском переводе на 2021.03.25 фраза переведена немного неправильно. В оригинале это выглядит как «Module php-imagick in this instance has no SVG support. For better compatibility it is recommended to install it.» — «У модуля php-imagick на этом сервере отсутствует поддержка формата SVG. Для лучшей совместимости рекомендуется установить его»

К оглавлению

Регион размещения сервера

Не указан регион размещения этого сервера Nextcloud, что требуется для возможности проверки номеров телефонов без указания кода страны.

Чтобы разрешить пользователям сервера указывать номера телефонов без указания кода страны, добавьте параметр «default_phone_region» с соответствующим кодом страны в соответствии с ISO 3166-1↗.

Опять же после обновления до 21 версии Nextcloud появляется такое предупреждение. Точную причину почему в Nextcloud понадобилось указывать номер телефона я не знаю, но как устранить это предупреждение — знаю.

Открывает файл config.php, расположенный в директории Nextcloud по пути config/config.php и внизу вставляем строку

  'default_phone_region' => 'RU',

Не знаю для чего вообще понадилось разработчикам из Nextcloud вставлять в код такое требование (а это требование, потому что иначе бы не было предупреждения на странице проверки конфигурации), но пока обновляться до 21 версии не стоит. Хотя, возможно, это из-за многочисленных требований регуляторов многих стран, в государственных учреждениях которых используется Nextcloud. Всё может быть. Со временем такое категоричное непринятие 21 версии у меня пропадёт. 🙂

К оглавлению

На этом тюнинг закончен, но не завершён.

Steps to reproduce

  1. Upgrade NC from 14 to 15 using the instructions here: https://docs.nextcloud.com/server/15/admin_manual/maintenance/manual_upgrade.html (see bug: File Permissions documentation#1142)

  2. Visit your website

Expected behaviour

I expect a login screen.

Actual behaviour

I get this error:

The server was unable to complete your request.

If this happens again, please send the technical details below to the server administrator.

More details can be found in the server log.
Technical details

    Remote Address: <private>
    Request ID: nI04wIe4C2WrAAVG4KBV
    Type: OCPFilesNotFoundException
    Code: 0
    Message:
    File: /var/www/nextcloud/lib/private/Files/Node/Node.php
    Line: 97


Trace

#0 /var/www/nextcloud/lib/private/Files/Node/Node.php(216): OCFilesNodeNode->getFileInfo()
#1 /var/www/nextcloud/lib/private/Files/Node/Node.php(117): OCFilesNodeNode->getPermissions()
#2 /var/www/nextcloud/lib/private/Files/Node/File.php(64): OCFilesNodeNode->checkPermissions(2)
#3 /var/www/nextcloud/lib/private/Files/SimpleFS/SimpleFile.php(104): OCFilesNodeFile->putContent('/**n * @copyrig...')
#4 /var/www/nextcloud/lib/private/Template/SCSSCacher.php(309): OCFilesSimpleFSSimpleFile->putContent('/**n * @copyrig...')
#5 /var/www/nextcloud/lib/private/Template/SCSSCacher.php(153): OCTemplateSCSSCacher->cache('/var/www/nextcl...', '339f-319d-jquer...', 'jquery-ui-fixes...', Object(OCFilesSimpleFSSimpleFolder), '/core/css')
#6 /var/www/nextcloud/lib/private/Template/CSSResourceLocator.php(109): OCTemplateSCSSCacher->process('/var/www/nextcl...', 'core/css/jquery...', 'core')
#7 /var/www/nextcloud/lib/private/Template/CSSResourceLocator.php(61): OCTemplateCSSResourceLocator->cacheAndAppendScssIfExist('/var/www/nextcl...', 'core/css/jquery...')
#8 /var/www/nextcloud/lib/private/Template/ResourceLocator.php(78): OCTemplateCSSResourceLocator->doFind('css/jquery-ui-f...')
#9 /var/www/nextcloud/lib/private/TemplateLayout.php(286): OCTemplateResourceLocator->find(Array)
#10 /var/www/nextcloud/lib/private/TemplateLayout.php(195): OCTemplateLayout::findStylesheetFiles(Array)
#11 /var/www/nextcloud/lib/private/legacy/template.php(211): OCTemplateLayout->__construct('user', 'files')
#12 /var/www/nextcloud/lib/public/AppFramework/Http/TemplateResponse.php(157): OC_Template->fetchPage(Array)
#13 /var/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php(119): OCPAppFrameworkHttpTemplateResponse->render()
#14 /var/www/nextcloud/lib/private/AppFramework/App.php(118): OCAppFrameworkHttpDispatcher->dispatch(Object(OCAFilesControllerViewController), 'index')
#15 /var/www/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php(47): OCAppFrameworkApp::main('ViewController', 'index', Object(OCAppFrameworkDependencyInjectionDIContainer), Array)
#16 [internal function]: OCAppFrameworkRoutingRouteActionHandler->__invoke(Array)
#17 /var/www/nextcloud/lib/private/Route/Router.php(297): call_user_func(Object(OCAppFrameworkRoutingRouteActionHandler), Array)
#18 /var/www/nextcloud/lib/base.php(987): OCRouteRouter->match('/apps/files/')
#19 /var/www/nextcloud/index.php(42): OC::handleRequest()
#20 {main}

The file /var/www/nextcloud/lib/private/Files/Node/Node.php exists.

Server configuration

Operating system: Ubuntu 16.04

Web server: Apache2

Database: mariaDB (& redis)

PHP version: 7.0.32

Nextcloud version: 15

Updated from an older Nextcloud/ownCloud or fresh install: from 14

Where did you install Nextcloud from: What does this question mean?

Signing status: What does this question mean?

Signing status

Login as admin user into your Nextcloud and access 
http://example.com/index.php/settings/integrity/failed 
paste the results here.

I can’t do that because I can’t log in.

List of activated apps:

App list

root@nextcloud:/var/www/nextcloud# sudo -u www-data php occ app:list
Enabled:
  - accessibility: 1.1.0
  - activity: 2.8.2
  - cloud_federation_api: 0.1.0
  - comments: 1.5.0
  - dav: 1.8.1
  - federatedfilesharing: 1.5.0
  - files: 1.10.0
  - files_external: 1.6.0
  - files_pdfviewer: 1.4.0
  - files_sharing: 1.7.0
  - files_texteditor: 2.7.0
  - files_trashbin: 1.5.0
  - files_versions: 1.8.0
  - files_videoplayer: 1.4.0
  - firstrunwizard: 2.4.0
  - gallery: 18.2.0
  - logreader: 2.0.0
  - lookup_server_connector: 1.3.0
  - nextcloud_announcements: 1.4.0
  - notifications: 2.3.0
  - oauth2: 1.3.0
  - password_policy: 1.5.0
  - provisioning_api: 1.5.0
  - serverinfo: 1.5.0
  - sharebymail: 1.5.0
  - support: 1.0.0
  - survey_client: 1.3.0
  - systemtags: 1.5.0
  - theming: 1.6.0
  - twofactor_backupcodes: 1.4.1
  - updatenotification: 1.5.0
  - workflowengine: 1.5.0
Disabled:
  - admin_audit
  - encryption
  - federation
  - user_ldap

Nextcloud configuration:

Config report

root@nextcloud:/var/www/nextcloud# sudo -u www-data php occ config:list system  
{
    "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "nextcloud.mydomain.com",
            "files.mydomain.com"
        ],
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "overwrite.cli.url": "https://nextcloud.mydomain.com",
        "dbtype": "mysql",
        "version": "15.0.2.0",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "theme": "",
        "loglevel": 2,
        "debug": true,
        "maintenance": false,
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpauthtype": "PLAIN",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "587",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpsecure": "tls",
"updater.release.channel": "stable",
        "memcache.local": "\OC\Memcache\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379
        },
        "memcache.locking": "\OC\Memcache\Redis"
    }
}

Are you using external storage, if yes which one: local/smb/sftp/…

No

Are you using encryption: yes/no

No

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/…

No

Client configuration

Browser:

Firefox

Operating system:

Linux

Logs

Web server error log

Web server error log

Nextcloud log (data/nextcloud.log)

Nextcloud log

Do you really want this?  It looks like a lot of HTML.

Browser log

Browser log

What do you want here?  I don't get browser errors so do you need this?

Содержание

  1. Internal Server Error в Nextcloud
  2. Nextcloud 13 — New Instalation 500 Internal Server Error #8406
  3. Comments
  4. Steps to reproduce
  5. Expected behaviour
  6. Actual behaviour
  7. Server configuration
  8. Internal Server Error #13597
  9. Comments
  10. Steps to reproduce
  11. Expected behaviour
  12. Actual behaviour
  13. Server configuration
  14. Client configuration
  15. Web server error log
  16. Nextcloud log (data/nextcloud.log)
  17. Browser log
  18. [Nextcloud 14] Internal Server Error #11205
  19. Comments
  20. Internal Server Error #911
  21. Comments

Internal Server Error в Nextcloud

Убрать ошибку “Internal Server Error” в Nextcloud

Уже сталкивался с ошибкой в статье “Ошибка nextcloud — Internal Server Error“, в этот раз попробую разобрать решение проблемы более детально.

Ошибка появилась после отключения питания на сервере

The server encountered an internal error and was unable to complete your request.
Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.
More details can be found in the server log.

Немного информации о сервере:

  • FreeBSD 13.0 release p4
  • Nginx 1.20.1
  • PHP 8.0.11
  • MariaDB 10.5.12
  • Redis 6.0.15
  • memcached
  • APCu
  • OPcache

Кеширование Nextcloud (часть конфига nextcloud)

Я сразу проверил службы отвечающие за кеш

Проверяем конфиг Редиса

Проверяем лог Redis

Файлы .rdb – это дампы на диске для резервного копирования или сохранения. Их можно безопасно удалить, конечно в рамках решения проблем c nextcloud, ну а сама база данных Redis полностью находится в памяти.

Удаляем файлы и пробуем запустить

Как видим, dump файл заново создался. Проверяем работу Nextcloud, всё работает

Источник

Nextcloud 13 — New Instalation 500 Internal Server Error #8406

Steps to reproduce

I’ve installed Nextcloud 13 with the following procedure:

apt-get install apache2 mariadb-server -y
systemctl start apache2
systemctl enable apache2
systemctl start mysql
systemctl enable mysql
apt-get install php7.1-xml php7.1 php7.1-cgi php7.1-cli php7.1-gd php7.1-curl php7.1-zip php7.1-mysql php7.1-mbstring wget unzip -y
mysql_secure_installation

created a database named «nextclouddb» and a user ‘nextcloud’@’localhost’.
Downloaded and unpacked nextcloud 13 then:

chown -R www-data:www-data /var/www/html/nextcloud/

sudo -u www-data php7.1 occ maintenance:install —database mysql —database-name nextclouddb —database-user nextcloud —admin-user admin

configured config.php and then:

sudo -u www-data php /var/www/html/nextcloud/occ maintenance:update:htaccess
sudo systemctl restart apache2

Expected behaviour

When I connect from my browser to http://127.0.0.1/nextcloud or http://localhost/nextcloud I should see the nextcloud start page.

Actual behaviour

Here is the error on the browser:

  • @author Joas Schilling * @author Jörn Friedrich Dreyer * @author Lukas Reschke * @author Morris Jobke * @author Robin Appelman * @author Sergio Bertolín * @author Thomas Müller * @author Vincent Petry * * @license AGPL-3.0 * * This code is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License, version 3, * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Affero General Public License for more details. * * You should have received a copy of the GNU Affero General Public License, version 3, * along with this program. If not, see * */ require_once DIR . ‘/lib/versioncheck.php’; try < require_once DIR . ‘/lib/base.php’; OC::handleRequest(); > catch(OCServiceUnavailableException $ex) < OC::$server->getLogger()->logException($ex, array(‘app’ => ‘index’)); //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); OC_Template::printExceptionErrorPage($ex); > catch (OCHintException $ex) < OC_Response::setStatus(OC_Response::STATUS_SERVICE_UNAVAILABLE); try < OC_Template::printErrorPage($ex->getMessage(), $ex->getHint()); > catch (Exception $ex2) < OC::$server->getLogger()->logException($ex, array(‘app’ => ‘index’)); OC::$server->getLogger()->logException($ex2, array(‘app’ => ‘index’)); //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); OC_Template::printExceptionErrorPage($ex); > > catch (OCUserLoginException $ex) < OC_Response::setStatus(OC_Response::STATUS_FORBIDDEN); OC_Template::printErrorPage($ex->getMessage(), $ex->getMessage()); > catch (Exception $ex) < OC::$server->getLogger()->logException($ex, array(‘app’ => ‘index’)); //show the user a detailed error page OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); OC_Template::printExceptionErrorPage($ex); > catch (Error $ex) < try < OC::$server->getLogger()->logException($ex, array(‘app’ => ‘index’)); > catch (Error $e) < $claimedProtocol = strtoupper($_SERVER[‘SERVER_PROTOCOL’]); $validProtocols = [ ‘HTTP/1.0’, ‘HTTP/1.1’, ‘HTTP/2’, ]; $protocol = ‘HTTP/1.1’; if(in_array($claimedProtocol, $validProtocols, true)) < $protocol = $claimedProtocol; >header($protocol . ‘ 500 Internal Server Error’); header(‘Content-Type: text/plain; charset=utf-8’); print(«Internal Server Errornn»); print(«The server encountered an internal error and was unable to complete your request.n»); print(«Please contact the server administrator if this error reappears multiple times, please include the technical details below in your report.n»); print(«More details can be found in the webserver log.n»); throw $e; > OC_Response::setStatus(OC_Response::STATUS_INTERNAL_SERVER_ERROR); OC_Template::printExceptionErrorPage($ex); >

Server configuration

Here is my config.php:

Operating system:

Web server:
Apache 2

Database:

PHP version:

Nextcloud version: (see Nextcloud admin page)

Updated from an older Nextcloud/ownCloud or fresh install:

The text was updated successfully, but these errors were encountered:

Источник

Internal Server Error #13597

Steps to reproduce

Visit your website

Expected behaviour

I expect a login screen.

Actual behaviour

I get this error:

The file /var/www/nextcloud/lib/private/Files/Node/Node.php exists.

Server configuration

Operating system: Ubuntu 16.04

Web server: Apache2

Database: mariaDB (& redis)

PHP version: 7.0.32

Nextcloud version: 15

Updated from an older Nextcloud/ownCloud or fresh install: from 14

Where did you install Nextcloud from: What does this question mean?

Signing status: What does this question mean?

I can’t do that because I can’t log in.

List of activated apps:

Nextcloud configuration:

Are you using external storage, if yes which one: local/smb/sftp/.

Are you using encryption: yes/no

Are you using an external user-backend, if yes which one: LDAP/ActiveDirectory/Webdav/.

Client configuration

Browser:

Operating system:

Web server error log

Nextcloud log (data/nextcloud.log)

Browser log

The text was updated successfully, but these errors were encountered:

Same issue here, I first upgraded from Ubuntu 16.04 to 18.04 then used the upgrader in nextcloud web to upgrade from 13 to 14. I now have exactly the same issues. My mobile nextcloud app although still works fine. So I guess it has something to do with the changes from PHP 7.0 to 7.2.

I’m still stuck. Did you already found a solution?

Nextcloud
Interne serverfout

De server was niet in staat je aanvraag te verwerken.

Stuur de hieronder afgebeelde technische details naar de server beheerder wanneer dit opnieuw gebeurt.

Meer details in de serverlogging,
Technische details

Источник

[Nextcloud 14] Internal Server Error #11205

I have installed Nextcloud and was working for a few hours and then it’s showing an Internal Server Error. I have checked the server log and haven’t found what’s the problem.

BTW, I have other apps working fine. The issue is just with nextcloud 14.

Client Error

Server Log

The text was updated successfully, but these errors were encountered:

Your server log is incomplete. Can you please post more content of your server log?
Have a look at it with «less» or «cat» and not with «vi».

And check first that your database is reachable if you use MySQL or PostgreSQL.

This also happens for me, during first time LDAP login. The error logs are:

$ name = $ user -> getBackendClassName ();

GitMate.io thinks possibly related issues are #6839 (Nextcloud got internal Server error after update APP:OnlyOFFICE, need to remove this APP completely), #2741 (Calendar app: internal server error after upgrading to Nextcloud 11), #7622 (NextCloud Server Listener ), #8326 (Internal Server Error (Template not found) when loading Calendar after upgrade to Nextcloud 13.x), and #5056 (nextcloud 12 upgrade error).

I’m pretty sure I stumbled across this issue this morning. I had added a user through the IMAP verification, and then it disappeared from the users list and when I try logging in to the account, it errors. There is no sign of the account in the users list or under occ user:info [username] .

Источник

Internal Server Error #911

Running Docker container latest . Everything was working fine (apps installed, mobile connected, etc), until I moved the volume files to a larger volume 10GB to 50GB, and then:

Pretty useless error message and I have NO idea where to find server log . I’m not even sure what filename I’m looking for. There is a file under nextcloud_nextcloud/_data named nextcloud.log . Is that the server log ? I’ve tried removing that file to see if it would be re-created and/or update after a restart of the container and a refresh of the error page, but nothing.

sure I could just start all over again, but fyi, this is the second time I’ve tried using Nextcloud (the first was a few years ago) and I recall having the same issue back then; Internal Server Error and nothing else in terms of error details. I guess this is fine for the end-user, they just call the admin, but where’s the support for the admin? I would love nothing more than for this open-source cloud solution to work, but if nextcloud is really this fragile, then I guess its just not the solution I’m looking for. Back to Google?? (ugh!)

Obviously pretty disappointed by this, but any and all support are very much appreciated.
Cheers!

EDIT:
Went back through the docs to find mention of a Nextcloud Server Log File. Does this file NOT exist unless its enabled in the Admin Page??

Also, when I connect to the container and try to view the Webserver Log Files, this is what I get:

Does this get written somewhere on the host? This could just be a docker thing, I’m really not sure, but either way, it would be nice to find these log files, and eventually solve «Internal Server Error».

The text was updated successfully, but these errors were encountered:

Источник

Recently on a fresh installation of NextCloud, the following error appeared after logging into the dashboard:

Internal Server Error The server was unable to complete your request.

Internal Server Error The server was unable to complete your request.

Or in plain text:


Internal Server Error
The server was unable to complete your request.

If this happens again, please send the technical details below to the server administrator.

More details can be found in the server log.

Technical details
Remote Address: XX.XX.XXX.XX
Request ID: YGwdJ99rJht4RtWzYxQ2


When checking the nextcloud.log file, the following errors stood out:

{"reqId":"zs37dGr4l9Kb6N3LGAWn","level":3,"time":"2022-01-04T16:09:00+00:00","remoteAddr":"XX.X.XXX.XXX","user":"jatak","app":"index","method":"GET","url":"/index.php","message":"An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size","userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36","version":"23.0.0.10","exception"

So the script is going over the sort buffer size limit configured in MySQL.

This appears to be an outstanding issue with MySQL which causes this error when trying to sort on a table with a JSON column. It looks like it impacts MySQL >= 8.0.1 and MariaDB >= 10.3


Option 1. Disable Circles app

To solve this, if you do not have access to the server configuration files (you are on a shared hosting server), simply disable the Circles app in NextCloud by renaming the following folder:

/apps/circles

rename app/circles folder to disable the app

rename app/circles folder to disable the app

This will disable the Circles app which needs a higher sort buffer size limit.


Option 2. Edit my.cnf file

If you have root access to the server (VPOS or DEDICATED server) you can edit the MySQL configuration file and increase the sort_buffer_size value.

sudo nano /etc/mysql/my.cnf

and inside increase the sort_buffer_size:

[mysqld]
sort_buffer_size=5M

Edit /etc/mysql/my.cnf

Edit /etc/mysql/my.cnf

then restart MySQL

sudo service mysql restart

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Pick a username
Email Address
Password

By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.

Already on GitHub?
Sign in
to your account

The admin logging page is also blank with loading spinner.

Steps to reproduce

  1. Installed Nextcloud 14 (fresh install)
  2. Logged in
  3. Clicked on Apps menu item / Click on Logging

Expected behaviour

Apps page should load. Should be able to disable/enable apps and browse apps to download and install. Logging page should load.

Actual behaviour

Apps pages are blank with just the circle loading animation. An error that is repeated three times appears in the notifications at the top of the screen, “An error occured during the request. Unable to proceed.”.
Screenshot: https://help.nextcloud.com/uploads/default/original/2X/0/0534e4916e1c5483ca4900886c043f9e3bffad89.png
The admin Logging page is the same but does not have errors appear. It is just blank with the loading spinner.

Server configuration

Operating system: Shared hosting, I think Cloud Linux (kernel 3.10.0-714.10.2.lve1.4.74.el7.x86_64)

Web server: Apache 2.4.34 (nginx service is also running)

Database: MySQL 5.6.40

PHP version: 7.2.10

PHP info: https://intothegarbagechuteflyboy.net/phpinfo.php

Nextcloud version: (see Nextcloud admin page) 14.0.0

Updated from an older Nextcloud/ownCloud or fresh install: FRESH (I did try upgrading from 13.0.5 but had issues with the calendar and contacts apps being disabled and reset. Installing apps kept failing so I decided to start fresh.

Where did you install Nextcloud from: Softaculous (cPanel)

Login as admin user into your Nextcloud and access
http://example.com/index.php/settings/integrity/failed
paste the results here.

No errors have been found.

List of activated apps:
Can’t access apps. But all the default ones that are activated on fresh install.

If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder

Don’t have access (shared hosting)

Nextcloud configuration:

config.php

<?php
$CONFIG = array (
  'instanceid' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'passwordsalt' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'secret' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'trusted_domains' => 
  array (
    0 => 'intothegarbagechuteflyboy.net',
  ),
  'datadirectory' => '/home/intothegarbage/nextclouddata',
  'dbtype' => 'mysql',
  'version' => '14.0.0.19',
  'overwrite.cli.url' => 'https://intothegarbagechuteflyboy.net/nextcloud',
  'dbname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbhost' => 'localhost',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'dbpassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'installed' => true,
  'mail_smtpmode' => 'smtp',
  'mail_smtpsecure' => 'ssl',
  'mail_smtpauthtype' => 'LOGIN',
  'mail_from_address' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_domain' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpauth' => 1,
  'mail_smtphost' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtpport' => '465',
  'mail_smtpname' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'mail_smtppassword' => '▓▓▓▓▓▓▓▓▓▓▓▓▓',
  'memcache.local' => '\OC\Memcache\APCu',
);

Are you using external storage, if yes which one: N/A

Are you using encryption: NO

Are you using an external user-backend, if yes which one: Not yet but would be webdav

Client configuration

Browser: Firefox 62

Operating system: Arch Linux

Logs

Web server error log

I only have access to home/user/logs files. This log also dates back to the 13.0.5 install which had issues with webdav
Web server error log: https://intothegarbagechuteflyboy.net/intothegarbagechuteflyboy.net-Sep-2018.log

Nextcloud log (data/nextcloud.log)

The only issue in this log is a warning about intl falback which I have fixed by enabling the intl module. Since doing that there is nothing more in the log. Below is the last log entry.

Nextcloud log

{"reqId":"W6HuwlSYVdZD449RsLAVdQAAAM0","level":3,"time":"2018-09-19T06:37:55+00:00","remoteAddr":"121.99.121.82","user":"stormrose","app":"PHP","method":"GET","url":"\/nextcloud\/ocs\/v2.php\/apps\/notifications\/api\/v2\/notifications","message":"You are using a fallback implementation of the intl extension. Installing the native one is highly recommended instead. at \/home\/intothegarbage\/public_html\/nextcloud\/3rdparty\/patchwork\/utf8\/src\/Patchwork\/Utf8\/Bootup\/intl.php#18","userAgent":"Mozilla\/5.0 (X11; Linux x86_64; rv:62.0) Gecko\/20100101 Firefox\/62.0","version":"14.0.0.19"}

Browser log

Browser console log

Content Security Policy: The page’s settings blocked the loading of a resource at data:font/woff;base64,d09GRgABAAAAAIw4AB... (“font-src”).
JQMIGRATE: Migrate is installed, version 1.4.0 jquery-migrate.min.js:2:542
New search handler registered search.js:66:4
Shutting down notifications: [500] Internal Server Error App.vue:144
_fetch/<
App.vue:144
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2
Object { users: Getter & Setter, apps: Getter & Setter, settings: Getter & Setter, oc: Getter & Setter, route: Getter & Setter, … }
 Error: "Request failed with status code 500"
exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:17293exportshttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:45:1313hhttps://intothegarbagechuteflyboy.net/nextcloud/settings/js/settings-vue.js:13:16307 index.js:43:2

Browser network har file:

http://intothegarbagechuteflyboy.net/Archive%2018-09-20%2016-31-55.har

ONLYOFFICE имеет хорошую поддержку документов в формате Microsoft Office, поэтому выбор пал на него.

Технологический стек:

  • ONLYOFFICE Docs Community.
  • CentOS 9 под ONLYOFFICE.
  • NextCloud развёрнут в TrueNAS и работает в Jail, но у вас может работать на чём угодно.

Устанавливаем через snap – это просто и быстро.

Добавить репозиторий EPEL:

sudo yum install epel-release

Установить snap:

sudo yum install snapd

Включить системный модуль, который управляет основным сокетом связи snap:

sudo systemctl enable --now snapd.socket

Включить поддержку классической привязки, создав символическую ссылку между /var/lib/snapd/snap и /snap:

sudo ln -s /var/lib/snapd/snap /snap

Установить ONLYOFFICE:

sudo snap install onlyoffice-ds

Перезагрузить сервер:

sudo reboot -n

Настройка сети

Открыть порты, на которых работает ONLYOFFICE:

sudo firewall-cmd --permanent --zone=public --add-port=80/tcp
sudo firewall-cmd --permanent --zone=public --add-port=443/tcp
sudo firewall-cmd --reload

Вы уже можете заходить по адресу вашего сервера и наблюдать работу сервера ONLYOFFICE.

Настройка SSL и работа по HTTPS

Если у вас уже есть сертификат и ключ, чуть ниже читайте куда их поместить. Мы же сейчас разберём как создать самоподписанный сертификат для использования его на сервере ONLYOFFICE.

Перейти во временный каталог:

cd /tmp

Создать закрытый ключ:

openssl genrsa -out onlyoffice.key 2048

Создать запрос на подпись сертификата:

openssl req -new -key onlyoffice.key -out onlyoffice.csr

Подписать сертификат:

openssl x509 -req -days 365 -in onlyoffice.csr -signkey onlyoffice.key -out onlyoffice.crt

Для усиления безопасности сервера сгенерировать усиленный dhparam:

openssl dhparam -out dhparam.pem 2048

Скопировать созданные файлы в рабочий каталог ONLYOFFICE:

cp onlyoffice.key /var/snap/onlyoffice-ds/current/var/www/onlyoffice/Data/certs/
cp onlyoffice.crt /var/snap/onlyoffice-ds/current/var/www/onlyoffice/Data/certs/
cp dhparam.pem /var/snap/onlyoffice-ds/current/var/www/onlyoffice/Data/certs/

Разрешить серверу использовать самоподписанные сертификаты:

snap set onlyoffice-ds onlyoffice.use-unautorized-storage=true

Перезапустить ONLYOFFICE, чтобы он подхватил настройки и начал автоматически работать по HTTPS:

snap restart onlyoffice-ds

Сертификат и ключ будут действительны год, через год повторите описанное в данном разделе.

Дополнительные команды

Перейти на HTTP удалив сертификат и перезапустив ONLYOFFICE:

rm /var/snap/onlyoffice-ds/current/var/www/onlyoffice/Data/certs/onlyoffice.*
rm /var/snap/onlyoffice-ds/current/var/www/onlyoffice/Data/certs/dhparam.pem
snap restart onlyoffice-ds

Сменить HTTPS-порт:

snap set onlyoffice-ds onlyoffice.ds-ssl-port=8443

Сменить HTTP-порт:

snap set onlyoffice-ds onlyoffice.ds-port=8080

Включить примеры на сервере, чтобы проверить работу сервера без подключения к NextCloud:

snap set onlyoffice-ds onlyoffice.example-enabled=true

После выполнения команды на главной странице сервера жмите на кнопку и проверяйте работу сервера:

Кнопка

Если работает, то можно подключать к NextCloud. Не забудьте потом отключить:

snap set onlyoffice-ds onlyoffice.example-enabled=false

Получить секретный ключ

Необходимо узнать секретный ключ, который требуется указать в NextCloud, чтобы он мог подключаться к ONLYOFFICE. Для этого на сервере, где установлен ONLYOFFICE открываем файл /var/snap/onlyoffice-ds/current/etc/onlyoffice/documentserver/local.json

Ищем секцию secret и записываем секретный ключ:

Секретный ключ Onlyoffice

Он нам пригодится дальше.

Настройка интеграции ONLYOFFICE и NextCloud

Кстати, есть небольшие особенности при интеграции, поэтому не упускайте детали.

Идём в настройки NextCloud https://{IP-DOMEN}/settings/apps/files и включаем плагин ONLYOFFICE connector:

ONLYOFFICE connector

После включения идём в настройки плагина https://{IP-DOMEN}/settings/admin/onlyoffice

Настройки интеграции Onlyoffice и Nextcloud

(1) — указать домен сервера или IP-адрес доступный снаружи, на котором развёрнут ONLYOFFICE. Если указать IP вашей внутренней сети, то редактировать документы сможете только с внутренней сети, так как NextCloud при открытии документов на редактирование обращается по этому адресу к ONLYOFFICE с вашего устройства (проверьте). И понятно, что если этот адрес недоступен из внешнего мира, то вы не сможете работать с документами.

(2) — тут указываем секретный ключ, который записали ранее узнав его в секции secret.

(3) — тут указываете IP сервера ONLYOFFICE принадлежащий к вашей внутренней сети.

(4) — здесь я указал домен NextCloud, который доступен из внешней сети. По умолчанию он и подставляется сюда.

Далее я выставил следующие настройки, так как считаю их оптимальными для себя:

Настройки интеграции Onlyoffice и Nextcloud
Настройки интеграции Onlyoffice и Nextcloud

Вы можете указывать свои настройки.

Особенности интеграции

  1. Первую особенность я озвучил выше, когда указывал какой IP прописывать, чтобы можно было документы править не только из локальной сети.
  2. Если время на сервере NextCloud отличается от времени на сервере ONLYOFFICE, то вы получите ошибку при сохранении настроек интеграции «При попытке соединения возникла ошибка (Возникла ошибка в службе документов: Error while downloading the document file to be converted.)». Устанавливайте одинаковое время и настройте синхронизацию серверов с каким-нибудь NTP сервером. У Google их четыре https://developers.google.com/time/guides
  3. Если при сохранении настроек синхронизации получаете ошибку «…Invalid Token», то скорее всего пока вы правили настройки NextCloud сбросил секретный ключ. Проверьте и снова внесите корректное значение.

Понравилась статья? Поделить с друзьями:
  • Во время записи произошла ошибка hardware error 9216
  • Во время восстановления данных устройства произошла ошибка xperia
  • Во время запроса произошла ошибка неизвестная ошибка
  • Внутренняя системная ошибка id 621 drager
  • Во время записи произошла неопознанная ошибка obs