Couch CMS è un sistema di gestione dei contenuti (CMS) semplice e flessibile, gratuito e open source che consente ai web designer di progettare bellissimi siti Web senza alcuna conoscenza di PHP. Con Couch CMS, gli sviluppatori Web possono prendere qualsiasi progetto HTML e CSS statico e trasformarli in un sito Web completamente gestito da CMS con il minimo sforzo.
In questo tutorial installeremo Couch CMS 2.0 su un VPS Ubuntu 16.04 LAMP usando il web server Apache, PHP 7.0 e un database MariaDB.
Passaggio 1: aggiungere un utente Sudo
Inizieremo aggiungendo un nuovo sudoutente.
Innanzitutto, accedi al tuo server come root:
ssh root@YOUR_VULTR_IP_ADDRESS
Aggiungi un nuovo utente chiamato user1(o il tuo nome utente preferito):
adduser user1
Quando richiesto, inserire una password sicura e memorabile. Ti verrà anche richiesto il tuo "Nome completo" e alcuni altri dettagli, ma puoi semplicemente lasciarli vuoti premendo Enter.
Ora controlla il /etc/sudoersfile per assicurarti che il sudoersgruppo sia abilitato:
visudo
Cerca una sezione come questa:
%sudo        ALL=(ALL:ALL)       ALL
Questa riga ci dice che gli utenti membri del sudogruppo possono usare il sudocomando per ottenere i rootprivilegi. Dovrebbe essere decommentato di default in modo da poter semplicemente uscire dal file.
Quindi dobbiamo aggiungere user1al sudogruppo:
usermod -aG sudo user1
Possiamo verificare l' user1appartenenza al gruppo e verificare che il usermodcomando abbia funzionato con il groupscomando:
groups user1
Ora usa il sucomando per passare al nuovo user1account utente sudo :
su - user1
Il prompt dei comandi verrà aggiornato per indicare che si è ora connessi user1all'account. Puoi verificarlo con il whoamicomando:
whoami
Ora riavvia il sshdservizio in modo da poter accedere tramite sshil nuovo account utente sudo non root che hai appena creato:
sudo systemctl restart sshd
Esci user1dall'account:
exit
Esci rootdall'account (che disconnetterà la sshsessione)
exit
Ora puoi sshaccedere all'istanza del server dal tuo host locale usando il nuovo user1account utente sudo non root :
ssh user1@YOUR_VULTR_IP_ADDRESS
Se vuoi eseguire sudo senza dover digitare una password ogni volta, quindi apri di /etc/sudoersnuovo il file, usando visudo:
sudo visudo
Modifica la sezione per il sudogruppo in modo che assomigli a questo:
%sudo   ALL=(ALL) NOPASSWD: ALL
Nota: la  disabilitazione del requisito di password per l'utente sudo non è una pratica consigliata, ma è inclusa qui in quanto può rendere la configurazione del server molto più conveniente e meno frustrante, specialmente durante sessioni di amministrazione di sistemi più lunghe! Se sei preoccupato per le implicazioni di sicurezza, puoi sempre ripristinare la modifica della configurazione all'originale dopo aver completato le attività di amministrazione.
Ogni volta che si desidera accedere rootall'account sudoutente dall'account utente, è possibile utilizzare uno dei seguenti comandi:
sudo -i
sudo su -
Puoi uscire rootdall'account e tornare al tuo sudoaccount utente in qualsiasi momento semplicemente digitando:
exit
Passaggio 2: aggiorna il sistema Ubuntu 16.04
Prima di installare eventuali pacchetti sull'istanza del server Ubuntu, aggiorneremo innanzitutto il sistema. 
Assicurarsi di aver effettuato l'accesso al server utilizzando un utente sudo non root ed eseguire i seguenti comandi:
sudo apt-get update
sudo apt-get -y upgrade
Passaggio 3: installare Apache Web Server
Installa il web server Apache:
sudo apt-get -y install apache2 
Quindi utilizzare il systemctlcomando per avviare e abilitare l'esecuzione automatica di Apache all'avvio:
sudo systemctl enable apache2
sudo systemctl start apache2
Controllare il file di configurazione del sito predefinito di Apache per assicurarsi che la DocumentRootdirettiva punti alla directory corretta:
sudo vi /etc/apache2/sites-enabled/000-default.conf 
L' DocumentRootopzione di configurazione dovrebbe apparire così:
DocumentRoot "/var/www/html"
Ora salva ed esci dal file e abilita il mod_rewritemodulo Apache:
sudo a2enmod rewrite
Riavvieremo Apache alla fine di questo tutorial, ma riavviare Apache regolarmente durante l'installazione e la configurazione è sicuramente una buona abitudine, quindi facciamolo ora:
sudo systemctl restart apache2
Passaggio 4: installare PHP 7.0
Ora possiamo installare PHP 7.0 insieme a tutti i moduli PHP necessari richiesti da Couch CMS:
sudo apt-get -y install php php-gd php-mbstring php-common php-mysql libapache2-mod-php php-curl
Passaggio 5: installare MySQL Server
Installa il server database MySQL:
sudo apt-get -y install mysql-server
Durante l'installazione del server MySQL, assicurarsi di inserire una password sicura per l' rootutente MySQL . Questo rootutente è diverso rootdall'utente in Ubuntu in quanto viene utilizzato solo per la connessione al server di database con privilegi completi.
Avvia e abilita l'esecuzione automatica del server MySQL al momento dell'avvio:
sudo systemctl enable mysql
sudo systemctl start mysql    
Proteggi l'installazione del tuo server MySQL:
sudo mysql_secure_installation
Quando richiesto, immettere la password creata per l' rootutente MYSQL durante l'installazione. Rispondi semplicemente " Y" a tutte le altre domande sì / no poiché i suggerimenti predefiniti sono le opzioni più sicure.
Passaggio 6: creare un database per CMS Couch
Accedere alla shell MySQL come rootutente MySQL eseguendo il comando seguente:
sudo mysql -u root -p
Per accedere al prompt dei comandi di MySQL, è sufficiente inserire la rootpassword MySQL quando richiesto.
Eseguire le seguenti query per creare un database MySQL e un utente del database per Couch CMS:
CREATE DATABASE couch_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'couch_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON couch_db.* TO 'couch_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Se preferisci, puoi sostituire il nome del database couch_dbe il nome utente couch_usercon qualcosa in più di tuo gradimento. Inoltre, assicurati di sostituire " UltraSecurePassword" con una password effettivamente protetta.
Passaggio 7: installare i file CMS di Couch
Cambia la tua directory di lavoro corrente nella directory web predefinita:
cd /var/www/html/
Se ricevi un messaggio di errore che dice qualcosa del genere, 'No such file or directory'prova il seguente comando:
cd /var/www/ ; sudo mkdir html ; cd html
La vostra directory di lavoro corrente dovrebbe essere: /var/www/html/. Puoi verificarlo con il pwdcomando (print working directory):
pwd
Ora usa wgetper scaricare l'archivio zip di installazione di Couch CMS:
sudo wget https://www.couchcms.com/kachua/download.php?auth=agJmBvEk%2FIM8aSh4XkqV5fbIxR4ghkd6Gy%2F8eL4nFCUpzoFYvddT%7CbKoInr8INleUFM9lPDT05r0dEfTqzuhb%7C0%7C0%7C0%7C1%7Cbccc27bd8eade8876d3f486bac1f4ca9
Nota:  è necessario verificare la versione più recente visitando la pagina di download di Couch CMS .
Elenca la directory corrente per verificare di aver scaricato correttamente il file:
ls -la
Diamo al file zip un nome più semplice:
sudo mv download.php* couchcms.zip
Quindi installa rapidamente decomprimere in modo che possiamo effettivamente decomprimere il file:
sudo apt-get -y install unzip
Ora decomprimi il file zip:
sudo unzip couchcms.zip
Spostare tutti i file di installazione nella directory principale Web:
sudo mv ./CouchCMS-2.0/* /var/www/html
Ora cambia la proprietà dei file web per evitare problemi con le autorizzazioni:
sudo chown -R www-data:www-data *
Riavviamo nuovamente Apache:
sudo systemctl restart apache2
Ora siamo pronti per passare al passaggio finale.
Passaggio 8: completare l'installazione di Couch CMS
Per completare l'installazione di Couch CMS, dobbiamo modificare il file di configurazione di Couch CMS, quindi prima assicurati di essere nella webroot e quindi rinomina il file di configurazione:
sudo mv ./couch/config.example.php ./couch/config.php
Quindi, apri il config.phpfile:
sudo vi ./couch/config.php
Aggiungi i seguenti valori:
define( 'K_GMT_OFFSET', 0 );
define( 'K_DB_NAME', 'couch_db' );
define( 'K_DB_USER', 'couch_user' );
define( 'K_DB_PASSWORD', 'UltraSecurePassword' );
define( 'K_DB_HOST', 'localhost' );
define( 'K_PRETTY_URLS', 1 );
define( 'K_USE_CACHE', 1 );
define( 'K_EMAIL_TO', '[email protected]' );
define( 'K_EMAIL_FROM', '[email protected]' );
Dopo aver aggiunto i valori di configurazione appropriati, è possibile salvare ed uscire. 
I passaggi finali dell'installazione di Couch CMS sono davvero semplici.
Prima visita la pagina di installazione di Couch CMS nel tuo browser:
http://YOUR_VULTR_IP_ADDRESS/couch
Oppure, se hai già configurato le tue impostazioni DNS di Vultr (e gli hai concesso abbastanza tempo per propagarsi) puoi semplicemente visitare il tuo dominio:
http://YOUR_DOMAIN/couch
Basta inserire i seguenti dettagli nella pagina di installazione:
Super-Admin Username: admin (or your preferred username)
Password: <your preferred password>
Email: <your email address>
Quindi fare clic sul pulsante " Install".
Se l'installazione ha avuto esito positivo, dovresti vedere una pagina di conferma che dice Log in. Basta fare clic Log inper continuare.
Ora puoi accedere al pannello di amministrazione di Couch CMS.
Se non hai già impostato il tuo DNS Vultr, probabilmente dovrebbe essere il tuo prossimo passo.
Ora sei pronto per iniziare ad aggiungere contenuti e configurare l'aspetto del tuo sito. Assicurati di consultare l'eccellente documentazione di Couch CMS per ulteriori informazioni su come configurare Couch CMS.
Ricorda che Couch CMS ti consente di prendere i tuoi vecchi siti Web HTML e CSS e di trasformarli facilmente in siti CMS completamente gestiti che anche gli utenti non tecnici possono aggiornare da soli. A differenza della maggior parte degli altri CMS, Couch CMS consente di convertire i siti HTML senza alcuna programmazione lato server.