Ir para o conteúdo

Nextcloud

De RJGSWiki
Revisão de 14h07min de 17 de fevereiro de 2026 por 104.23.254.89 (discussão) (Troubleshooting)
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)

NextCloud

NextCloud Client

Para instalar o client do Nextcloud você deve recorrer ao site oficial da empresa.

https://nextcloud.com/install/

Escolha o instalador conforme seu Sistema Operacional.

NextCloud Server

Via APT

Atualiza:

sudo apt update 
apt list --upgradable 
sudo apt upgrade -y 

Instalando o Vim

sudo apt install vim -y 

Instalando o zip e unzip

sudo apt install zip unzip -y 

Trocando o HOSTNAME do Server.

echo "nextcloud" | tee /etc/hostname 

Instalando os pacotes necessários.

sudo apt install apache2 -y 
sudo apt install mariadb-server -y 
sudo apt install libapache2-mod-php7.4 -y 
sudo apt install php7.4-gd -y 
sudo apt install php7.4-mysql -y 
sudo apt install php7.4-curl -y 
sudo apt install php7.4-mbstring -y 
sudo apt install php7.4-intl -y 
sudo apt install php7.4-gmp -y 
sudo apt install php7.4-bcmath -y 
sudo apt install php-imagick -y 
sudo apt install php7.4-xml -y 
sudo apt install php7.4-zip -y 

Operação do Daemon

sudo systemctl status apache2 
sudo systemctl restart apache2 
sudo systemctl start apache2 
sudo systemctl stop apache2

Banco de Dados

sudo /etc/init.d/mysql start 
sudo mysql -uroot -p 
CREATE USER 'rjgs'@'localhost' IDENTIFIED BY 'R0b150nJ03l'; 
CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 
GRANT ALL PRIVILEGES ON nextcloud.* TO 'rjgs'@'localhost'; 
FLUSH PRIVILEGES; 
quit; 

Download

sudo mkdir .nextcloud/ 
cd .nextcloud/ 
sudo wget https://download.nextcloud.com/server/releases/latest.zip 
unzip latest.zip 
sudo cp -vur nextcloud /var/www 
sudo chown -R www-data:www-data /var/www/html/nextcloud/config/ 
sudo chmod -R 770 /var/www/html/nextcloud/config/ 
sudo chown -R www-data:www-data nextcloud/ 
sudo chmod -R 775 nextcloud/ 

Via Snap

Instalação

Atualiza:

sudo apt update 
apt list --upgradable 
sudo apt upgrade -y 

Instalando o suporte ao snap

sudo apt install snapd -y 

Instalando o Nextcloud

sudo snap install nextcloud 

Após isso basta acessar o servidor, com o IP pelo navegador. Você será direcionado á pagina de login, solicitando que crie seu usuario.

Troubleshooting

Erro no primeiro acesso

Logo no primeiro acesso, depois da instalação,

Acessar através de um domínio inseguro

Por favor contacte seu administrador. Se você for o administrador, edite a configuração "trusted_domains" em config/config.php como o exemplo em config.sample.php.

Mais informações de como configurar isso podem ser encontradas na documentação.

Como diz no aviso, você deve editar o arquivo *config/config.php* que estará na pasta de instalação do Nextcloud tendo sua localização dependendo da forma que foi instalado.

vim config/config.php

Neste arquivo, inclua o ip

'trusted_domains' =>
   [
    'demo.example.org',
    '10.111.112.113',
    '[2001:db8::1]'
  ],

ou

'trusted_domains' =>
  array (
    0 => '192.168.0.123', // IP do host que foi instalado o Nextcloud
    1 => 'seudominio.com.br', // Domínio da rede ou DDNS.
  ),

Depois, reinicie o servidor:

sudo reboot

Indexar arquivos

 php "caminho_do_nextcloud/occ" files:scan --path="usuario/files/"

Diretório de dados acessível pela Internet

Erro:

Seu diretório de dados e arquivos provavelmente estão acessíveis pela Internet. O arquivo .htaccess não está funcionando.

Solução

Verifique onde está configurado o diretório de dados no arquivo config.php do Nextcloud:

sudo vim /var/www/nextcloud/config/config.php

Procure por:

'datadirectory' => '/var/www/nextcloud/data'

Recomenda-se mover o diretório de dados para fora da raiz do servidor web, por exemplo:

sudo mv /var/www/nextcloud/data /home/nextcloud-data
sudo chown -R www-data:www-data /home/nextcloud-data

Atualize no config.php:

'datadirectory' => '/home/nextcloud-data',

Arquivos inválidos na verificação de integridade

Erro:

Alguns arquivos não passaram na verificação de integridade.

Solução

Execute a verificação e repare:

sudo -u www-data php /var/www/nextcloud/occ integrity:check-core
sudo -u www-data php /var/www/nextcloud/occ maintenance:repair

Problema com /ocm-provider/

Erro:

Seu servidor web não está configurado corretamente para resolver "/ocm-provider/".

Solução Apache

Se usa Apache, verifique se o .htaccess está habilitado:

sudo a2enmod rewrite
sudo systemctl restart apache2

Solução Nginx

Se usa Nginx, adicione no server { }:

nginx   location ^\~ /ocm-provider/ {       return 404;   }

Problema com .well-known

Erro:

Seu servidor web não está configurado corretamente para resolver URLs .well-known.

Solução Nginx

location ^~ /.well-known {
    location = /.well-known/carddav { return 301 /remote.php/dav/; }
    location = /.well-known/caldav  { return 301 /remote.php/dav/; }
    try_files $uri $uri/ =404;
}

Solução Apache

No .htaccess:

Redirect 301 /.well-known/carddav /remote.php/dav
Redirect 301 /.well-known/caldav  /remote.php/dav

Janela de manutenção não configurada

Erro:

O servidor não tem horário de início da janela de manutenção configurado.

Solução

Adicione no config.php:

'maintenance_window_start' => 1,  // 1 = 01:00h da madrugada

Migração de mimetypes pendente

Erro:

Uma ou mais migrações de mimetype estão disponíveis.

Solução

sudo -u www-data php /var/www/nextcloud/occ maintenance:repair --include-expensive

Cabeçalhos HTTP incorretos (HSTS)

Erro:

O cabeçalho HTTP Strict-Transport-Security não está definido.

Solução Nginx

add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;

Solução Apache

<IfModule mod_headers.c>
    Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>

Cache de memória não configurado

Erro:

Nenhum cache de memória foi configurado.

Solução

Instale APCu:

sudo apt install php-apcu -y
sudo systemctl restart apache2

No config.php:

'memcache.local' => '\\OC\\Memcache\\APCu',

Para setups maiores, também configure Redis:

sudo apt install redis-server php-redis -y
sudo systemctl enable redis-server --now

E no config.php:

'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
   'host' => 'localhost',
   'port' => 6379,
],

Região padrão de telefone não configurada

Erro:

Sua instalação não tem uma região padrão de telefone definida.

Solução

No config.php:

'default_phone_region' => 'BR',

Servidor de e-mail não configurado

Erro:

Você ainda não definiu ou verificou a configuração do seu servidor de e-mail.

Solução

No config.php, configure SMTP, exemplo com Gmail:

'mail_from_address' => 'seuemail',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => 'gmail.com',
'mail_smtphost' => 'smtp.gmail.com',
'mail_smtpport' => 587,
'mail_smtpauth' => 1,
'mail_smtpsecure' => 'tls',
'mail_smtpname' => '[email protected]',
'mail_smtppassword' => 'suasenha',

Depois, no painel do Nextcloud, teste o envio de e-mail.

Fonte

  • https:/#/docs.nextcloud.com/server/23/admin_manual/installation/example_ubuntu.html