Nextcloud è una piattaforma di condivisione e collaborazione di file open source, self-hosted, simile a Dropbox. Viene fornito in bundle con lettore multimediale, calendario e gestione dei contatti.
Nextcloud è estensibile tramite app e dispone di client desktop e mobili per tutte le principali piattaforme.
Questo tutorial ti guiderà attraverso il processo di installazione e configurazione di Nextcloud con Apache su un sistema CentOS 7.
Prerequisiti #
Prima di iniziare con il tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.
Fase 1:creazione del database MySQL #
NextCloud può utilizzare database SQLite, PostgreSQL o MySQL per archiviare tutti i suoi dati.
In questo tutorial useremo MySQL come database preferito.
Se non hai già MySQL o MariaDB installato sul tuo server CentOS, puoi installarlo seguendo una delle istruzioni seguenti:
- Installa MySQL su CentOS 7
- Installa MariaDB su CentOS 7
Inizia accedendo alla shell MySQL digitando il seguente comando:
sudo mysql
Esegui le seguenti istruzioni SQL per creare un database denominato nextcloud
, utente denominato nextclouduser
e per concedere i privilegi necessari all'utente:
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
GRANT ALL ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'change-with-strong-password';
FLUSH PRIVILEGES;
EXIT;
Fase 2:installazione di PHP e Apache #
Nextcloud è un'applicazione PHP. CentOS 7 viene fornito con PHP 5.4 che non è supportato da Nextcloud.
Installeremo PHP 7.2 dal repository Remi. I comandi seguenti abiliteranno i repository EPEL e Remi:
sudo yum install epel-release yum-utils
sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum-config-manager --enable remi-php72
Una volta abilitati i repository, installa ApachePHP 7.2 e tutte le estensioni PHP richieste con il seguente comando:
sudo yum install httpd php php-gd php-json php-mysql php-curl php-mbstring php-intl php-mcrypt php-imagick php-xml php-zip
Fase 3:configurazione del firewall #
Se stai eseguendo Firewall sul tuo server CentOS, dovrai aprire HTTP (80
) e HTTPS (443
) porte.
Puoi farlo eseguendo i seguenti comandi:
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
Fase 4:download di Nextcloud #
Scarica l'ultima versione di Nextcloud dalla pagina di download di Nextcloud con wget:
wget -P /tmp https://download.nextcloud.com/server/releases/nextcloud-15.0.0.zip
Al momento della stesura di questo articolo, l'ultima versione di Nextcloud è la versione 15.0.0. Una volta completato il download, estrai l'archivio nella directory /var/www:
sudo unzip /tmp/nextcloud-15.0.0.zip -d /var/www
Imposta la proprietà corretta in modo che il server web Apache possa avere pieno accesso ai file e alle directory di Nextcloud:
sudo chown -R apache: /var/www/nextcloud
Fase 5:configura Apache #
Apri il tuo editor di testo e crea il seguente file di configurazione di Apache.
sudo nano /etc/httpd/conf.d/nextcloud.conf
/etc/httpd/conf.d/nextcloud.confAlias /nextcloud "/var/www/nextcloud/"
<Directory /var/www/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>
Attiva le modifiche riavviando il servizio Apache:
sudo systemctl restart httpd
Passaggio 6:installazione di Nextcloud #
Ora che Nextcloud è stato scaricato e tutti i servizi necessari sono configurati, apri il tuo browser e avvia l'installazione di Nextcloud visitando il nome di dominio o l'indirizzo IP del tuo server seguito da /nextcloud
:
http://domain_name_or_ip_address/nextcloud
Ti verrà presentata la pagina di configurazione di Nextcloud.
Inserisci il nome utente e la password dell'amministratore desiderati e i dettagli dell'utente e del database MySQL che hai creato in precedenza.
Fare clic su Finish setup
pulsante e una volta completato il processo di installazione verrai reindirizzato alla dashboard di Nextcloud connesso come utente amministratore.