sysadmin:nextcloud

Это старая версия документа!


Nextcloud

Перейти в каталог с nextcloud

/var/www/nextcloud

Выполнить команду occ

sudo -u www-data php occ {команда}

Источник для версии 28.х

Включен

php occ maintenance:mode --on

Выключен

php occ maintenance:mode --off
 sudo -u www-data php /path_to_nextcloud/occ user:resetpassword User_Login 
 sudo -u www-data php /path_to_nextcloud/occ user:list 

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

Добавить в config.php

'default_phone_region' => 'RU',

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

apt install imagemagick
files:scan

каждую минуту через крон (не айс). и есть недокументированная опция

'filesystem_check_changes' => 1

в конфиге и не нужен крон.

выполним команду с правили пользователя веб-сервера www-datа. Ключ files:scan ищет новые файлы и обновляет файловый кеш.

cd /var/www/nextcloudsudo -u www-data php occ files:scan --all

например с именем username, команда немного отличается.

cd /var/www/nextcloudsudo -u www-data php occ files:scan username

При установленном nextcloud в контейнере

docker exec -it nextcloud sudo -u abc php /config/www/nextcloud/occ db:add-missing-indices

Поместите их в директорию:

%CLOUD_ROOT%/core/skeleton

где %CLOUD_ROOT% — директория, в которую установлено облако.

При нахождении Nextcloud за NGINX proxy maneger (NPM), необходимо в NPM в раздел Advanced необходимого хоста внести запись

add_header X-Frame-Options "SAMEORIGIN";

или для большей безопасности

proxy_hide_header Upgrade;
proxy_hide_header X-Powered-By;
add_header Content-Security-Policy "upgrade-insecure-requests";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Cache-Control "no-transform" always;
add_header Referrer-Policy no-referrer always;
add_header X-Robots-Tag none;

,а в

nano /var/www/nextcloud/config/config.php

добавить

'trusted_proxies' =>
  array (
    0 => 'IP_address proxy',
  ),
  'forwarded_for_headers' =>
  array (
    0 => 'HTTP_X_FORWARDED_FOR',
  ),

Источник

Что бы реаьный IP отражался и в журнале nextcloud и в log файлах сервера надо убрать настройки Advanced

add_header X-Frame-Options "SAMEORIGIN";

или

proxy_hide_header Upgrade;
proxy_hide_header X-Powered-By;
add_header Content-Security-Policy "upgrade-insecure-requests";
add_header X-Frame-Options "SAMEORIGIN";
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Cache-Control "no-transform" always;
add_header Referrer-Policy no-referrer always;
add_header X-Robots-Tag none;

Добавить настройки config.php

'trusted_proxies' =>
  array (
    0 => 'IP_address proxy',
  ),
  'forwarded_for_headers' =>
  array (
    0 => 'HTTP_X_FORWARDED_FOR',
  ),

Открыть

mcedit /etc/nginx/nginx.conf

добавить в раздел

http {

# ...

##
# Logging Settings
##

log_format specialLog '$remote_addr forwarded for $http_x_real_ip - $remote_user [$time_local] '
'"$request" $status $body_bytes_sent '
'"$http_referer" "$http_user_agent"';

access_log /var/log/nginx/access-special.log specialLog;

проверим конфиг и перезагрузим nginx

nginx -t
nginx -s reload

Источник

'default_language' => 'ru',
'default_locale' => 'ru_RU',
'force_language' => 'ru',
'default_phone_region' => 'RU',

Дополнительная информация представлена в документации.

Буфер интернированных строк OPcache почти заполнен. Чтобы обеспечить эффективное кэширование повторяющихся строк, рекомендуется установить opcache.interned_strings_buffer в конфигурации PHP со значением выше, чем 8.

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

добавить

opcache.interned_strings_buffer=16

перезагрузить fpm

sudo systemctl restart php8.1-fpm

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

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

'defaultapp' => 'files',

Для доступа к файлам, используя обратный прокси, особых настроек делать не надо, достаточно в директиве 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 через доверенный прокси»

Этот пункт можно пропустить, если настраиваете облако на локальный диск, а не на отдельную машину с доступом по nfs

Ставим nfs-client

sudo apt install nfs-common -y

Монтируем папку nfs

sudo mkdir -p /nfs/nc sudo mount your_host_ip:/папка_шары_nfs/ /nfs/nc sudo ls -l /nfs/nc/ sudo df -h sudo du -sh /nfs/nc/

Монтируем nfs при загрузке

sudo nano /etc/fstab

Добавим такую строку в конец файл

your_host_ip:/папка_шары_nfs/  /nfs/nc  nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0

потребовалось изменить в файле /etc/nginx/

add_header X-Robots-Tag none;

на

add_header X-Robots-Tag "noindex, nofollow" always;
  • Последнее изменение: 02:10:2025 14:24