Devem criar um novo ficheiro de configuração do Apache2 em /etc/apache2/sites-available/nextcloud.conf e editá-lo. Coloquem a informação do caminho onde o site estará alojado, bem como as variáveis internas de ambiente, que vão ficar disponíveis para serem lidas pelos módulos do Apache.
- sudo su
- nano /etc/apache2/sites-available/nextcloud.conf
Alias /nextcloud “/var/www/nextcloud/”
<Directory /var/www/nextcloud/>
Require all granted
AllowOverride All
Options FollowSymLinks MultiViews
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
Activar o site, os módulos do apache e limites de memoria do PHP
- a2ensite nextcloud – Activa o o site
- a2enmod rewrite headers env dir mime – Activa os módulos
- sed -i ‘/^memory_limit =/s/=.*/= 512M/’ /etc/php/7.4/apache2/php.ini – Aumenta os limites de memoria do php
- reboot – Reinicia o sistema
Testar o acesso
Abram o site com o IP que definiram (192.168.1.5/nextcloud, no nosso caso). Se tudo estiver correcto vão ver a página do Nextcloud, onde têm de definir uma conta de administrador, o caminho para os dados que vão ser armazenados (/var/www/nextcloud/data) e o utilizador da base de dados. Esta primeira configuração padrão é fundamental, para depois alterar caminho para o Raid 1.
Reconfigurar o ficheiro PHP e a base de dados
Na edição de Julho (294), foi configurado o Raid 1 no caminho /mnt/md0/data e é esse caminho que tem de ser definido em substituição do padrão /var/www/nextcloud/data/.
- sudo -u www-data php /var/www/nextcloud/occ maintenance:mode –on – Coloca em modo manutenção
- cp -a /var/www/nextcloud/data/. /mnt/md0/data/ – Copia tudo da pasta data, para a pasta data que está no raid 1
- chown -R www-data:www-data /mnt/md0/ – Altera o dono e o grupo da pasta md0 para www-data
- nano /var/www/nextcloud/config/config.php – Substitui no ficheiro php o campo ‘datadirectory’ => ‘/mnt/md0/data/’, com o novo caminho.
Por fim, é preciso alterar na base de dados MariaDb o caminho padrão /var/www/nextcloud/data/ para o novo /mnt/md0/data/.
- mysql -uroot -p
- use nextcloud
- select * from oc_storages;
- update oc_storages set id=’local::/mnt/md0/data/’ where id=’local::/var/www/nextcloud/data/’;
- quit;
- sudo -u www-data php /var/www/nextcloud/occ maintenance:mode –off
- systemctl stop apache2
- reboot
Conclusão
Se não quiserem ter todo este trabalho, podem usar o Snap do Nextcloud ou usar o Docker. Esta série de artigos mostrou a forma mais demorada de configuração, com o objectivo de perceberem a lógica por trás e o que é necessário para tudo funcionar.