Lezione

5. Installiamo un CMS

5. Installiamo un CMS

Abbiamo installato Ubuntu creando il server www.example.com . Successivamente abbiamo installato il web server Apache HTTP a cui abbiamo aggiunto lo strato software PHP. Infine abbiamo aggiunto e inizializzato MariaDB e PhpMyAdmin per gestirlo.

Passiamo ora a installare due noti CMS: Joomla e WordPress. Le procedure sono simili e analoghe all’installazione di molti altri prodotti Web.

Passiamo, dunque, alla fase esecutiva. L’obiettivo è il seguente ambiente:

  • Joomla:

    • URL: www.example.com/joomla

    • Database nome: joomladb

    • Database user: joomlauser

    • Database password: joomlapass

    • Joomla admin user: jadminuser

    • Joomla admin password: jadminpass32FF

  • WordPress:

    • URL: www.example.com/wordpress

    • Database nome: wordpressdb

    • Database user: wordpressuser

    • Database password: wordpresspass

    • Wordpress admin user: wpadminuser

    • Wordpress admin password: wpadminpass

5.1. Preparazione per Joomla

Prepariamo il database per Joomla:

  • colleghiamoci a MariaDB attraverso PhpMyAdmin accedendo all’URL http://www.example.com/pma

  • autentichiamoci con l’utente root o con remoteroot

  • nella home clicchiamo sul bottone “Database”


Figura 19: PhpMyAdmin: osizionamento del menu "Database"



  • nella form di creazione database scriviamo il nome joomladb e clicchiamo sul bottone “Crea”


Figura 20: PhpMyAdmin: schermata per creare un database



  • nella nuova form che comparirà clicchiamo prima su “Privilegi” e poi su “Aggiungi account utente”


Figura 21: PhpMyAdmin: schermata per creare un utente



  • nella form che segue impostiamo

    Nome utente: joomlauser
    Nome host: localhost
    Password: joomlapass

    e clicchiamo sul bottone a fondo pagina “Esegui”


  • Figura 22: PhpMyAdmin: schermata per creare un account utente


    nella nuova pagina che compare clicchiamo su “Database”


Figura 23: PhpMyAdmin: schermata principale per impostare i privilegi di un account



  • nella pagina di selezione del database clicchiamo su “joomladb” e poi sul bottone esegui


  • Figura 24: PhpMyAdmin: schermata per selezionare il database da associare ad un account


    selezioniamo tutte le autorizzazioni disponibili e clicchiamo sul bottone “Esegui”


Figura 25: PhpMyAdmin: schermata per i privilegi account-database


A questo punto abbiamo creato un database e un utente con permessi ristretti solo al database “joomladb”. Siamo pronti ad eseguire l’installazione vera e propria di Joomla.

5.2. Installare Joomla

Iniziamo operando prima dal terminale e poi completeremo dal web browser dalla nostra workstation.

  • Dal terminale spostiamoci nella directory temporanea che abbiamo creato prima

cd ~ && cd Temp
  • creiamo subito la directory “joomla” che useremo in seguito

mkdir joomla && cd joomla
  • scarichiamo pacchetto di Joomla 5

wget https://downloads.joomla.org/cms/joomla5/5-1-0/Joomla_5-1-0-Stable-Full_Package.zip
  • estraiamolo ed eliminiamo lo zip che non ci servirà

unzip Joomla_5-1-0-Stable-Full_Package.zip
rm Joomla_5-1-0-Stable-Full_Package.zip
  • spostiamo il tutto nella web root

cd .. 
sudo mv joomla /var/www/html/
  • e infine sistemiamo permessi e predisponiamo l’attivazione del SEO

sudo chown www-data:www-data -R /var/www/html/joomla
sudo cp -p /var/www/html/joomla/htaccess.txt /var/www/html/joomla/.htaccess

A questo punto tutto è pronto per passare alla finalizzazione.

  • Ci spostiamo sulla nostra workstation, apriamo il nostro web browser e accediamo all’URL http://www.example.com/joomla
    Ci troveremo con la schermata qui di seguito


  • Figura 26: Joomla: prima schermata di installazione


    inseriamo il nome che vogliamo dare al sito e clicchiamo sul bottone “Configura dati di accesso”
    NB: il nome lo possiamo cambiare in seguito se cambiamo idea


  • Figura 27: Joomla installazione: impostazione nome del sito


    la nuova pagina ci chiede i dati per creare l’utente amministratore generale del sito. Dopo la compilazione clicchiamo sul bottone "Configura la Connessione del Database". Impostiamo i seguenti dati

    nome del tuo Super User: Mario Rossi

    Nome utente per il tuo account Super Amministratore: jadminuser

    Password del tuo account Super User: jadminpass32FFi

    email del Super User del sito: mario.rossi@example.com

    NB: scrivetevi subito i dati che inserite perché non si potranno recuperare. Pertanto se vi dimenticate la password, ad esempio, rimarrete chiusi fuori dal sito e dovrete reinstallarlo. Una volta entrati potete creare un secondo super user, un terzo, ecc...


  • Figura 28: Joomla installazione: impostazione dati di accesso a Joomla


    nella nuova pagina inseriamo i dati del database che abbiamo creato prima e clicchiamo sul bottone a fondo pagina "Installa Joomla". A titolo di promemoria i dati da inserire sono

    Nome dell'host: localhost

    Nome utente del database: joomlauser

    Password del database: joomlapass

    Nome del database: joomladb


Figura 29: Joomla installazione: impostazione dati di accesso al database



  • una barra di progressione ci terrà aggiornati sullo stato di installazione che durerà pochi secondi.

    Al termine ci verrà presentata la schermata qui di seguito che ci comunica che tutto è terminato ed è andato a buon porto.


Figura 30: Joomla installazione: pagine di fine installazione


L’installazione è terminata!

Joomla è completamente funzionante, ma è come una scatola vuota e disadorna.

5.3. Verifichiamo Joomla

Per verificare il nostro CMS:

  • dal browser accediamo all’URL http://www.example.com/joomla
    Comparirà la pagina di home vuota come detto sopra;

  • ora accediamo all’URL http://www.example.com/joomla/administrator

  • comparirà la pagina di login per la gestione del sito.

    Inseriamo la username e la password definite prima durante l’installazione.

    Accederemo alla home di gestione. Nel primo accesso ci verrà proposto un tour esplorativo di Joomla.

5.4. Preparazione per WordPress

Passiamo a installare il più noto CMS open source WordPress.

L’operazione è molto simile a quella che abbiamo fatto per Joomla.

Iniziamo dalla creazione del database e dell’utente per il DB. Faremo tutto, però, dal terminale:

  • accediamo alla command-line di MariaDB

sudo mariadb -h localhost
  • creiamo il database

CREATE DATABASE wordpressdb;
  • creiamo l’utente per accedere al database con autorizzazioni solo per questo database

CREATE USER "wordpressuser"@"localhost" IDENTIFIED BY "wordpresspass";
GRANT ALL PRIVILEGES ON wordpressdb.* TO "wordpressuser"@"localhost";
FLUSH PRIVILEGES;
  • e usciamo dalla command-line

\q

A questo punto abbiamo creato un database e un utente con permessi ristretti solo al database “wordpressdb”. Siamo pronti ad eseguire l’installazione vera e propria di WordPress.

5.5. Installare WordPress

Iniziamo operando prima dal terminale e poi completeremo dal web browser della nostra workstation.

  • Dal terminale spostiamoci nella directory temporanea che abbiamo prima creato

cd ~ && cd Temp
  • scarichiamo il pacchetto di WordPress 6.5.3 (la versione disponibile mentre scrivo)

wget -O wordpress-6.5.3.zip https://wordpress.org/latest.zip
  • estraiamo ed eliminiamo lo zip che non ci servirà

unzip wordpress-6.5.3.zip && rm wordpress-6.5.3.zip
  • spostiamo il tutto nella web root

sudo mv wordpress /var/www/html/
  • e infine sistemiamo i permessi

sudo chown www-data:www-data -R /var/www/html/wordpress

A questo punto tutto è pronto per passare alla finalizzazione:

  • ci spostiamo sulla nostra workstation, apriamo il nostro browser web e accediamo all’URL http://www.example.com/wordpress

  • nella pagina che si apre selezioniamo la lingua e clicchiamo sul bottone “Continua” a fondo pagina


  • Figura 31: WordPress installazione: selezione della lingua delle pagine


    dopo qualche istante si apre la scherma che comunica l’inizio installazione; clicchiamo sul bottone “Iniziamo”


  • Figura 32: WordPress installazione: prima informativa


    la nuova pagina ci chiede i dati per accedere al database. Dopo la compilazione clicchiamo sul bottone "Invia". Impostiamo i seguenti dati

    Nome del database: wordpressdb

    Nome utente: wordpressuser

    Password: wordpresspass

    Host del database: localhost


  • Figura 33: WordPress installazione: dati per l'accesso al database


    si apre una schermata di conferma. Clicchiamo sul bottone “Avvia l’installazione”


  • Figura 34: WordPress installazione: seconda informativa


    nella pagina che segue inseriamo i dati per creare l’utente amministratore. Dopo aver completato la form clicchiamo sul bottone “Installa WordPress”.

    A titolo di promemoria i dati da inserire sono:

    Titolo del sito: Mio sito WP

    Nome utente: wpadminuser

    Password: wpadminpass

    La tua email: mario.rossi@example.com

    NB: come per Joomla scriviamoci subito i dati di accesso e conserviamoli accuratamente;


  • Figura 35: WordPress installazione: creazione della account di accesso


    l’ultima pagina che appare è un promemoria delle credenziali inserite ed una conferma che tutto è andato a buon fine


Figura 36: WordPress installazione: informativa di riepilogo


L’installazione è terminata!

WordPress è completamente funzionante e popolato con qualche immagine e testo di esempio.

5.6. Verifichiamo WordPress

Per verificare il nostro CMS:

5.7. Conclusione sui CMS

Esistono tanti diversi CMS. Ciascuno ha i suoi punti di forza specifici.

Abbiamo visto che l’installazione, dopo una prima formazione necessaria, è semplice. Impegnativa e decisamente più lunga è la parte di personalizzazione dell’aspetto del CMS (=template) e il caricamento dei contenuti.

Aspetto qui intenzionalmente non trattato, ma solo accennato, è la sicurezza: in parte dipende dal CMS stesso (e quindi si rimanda la questione alle aziende che progettano il CMS che non sempre brillano per buon codice), in parte dai web master (a volte l’assecondare il cliente si scontra con insufficienti competenze e soluzioni semplici e d’effetto, ma con intrinseche vulnerabilità) e dal sistemista che configura il server.

Quest’ultimo aspetto andrà affrontato. Servono diverse conoscenze su varie tecnologie e alcune specifiche sul server e sull’architettura su cui operiamo.

Queste prime pagine vanno lette come una prima formazione per capire come si fa e come funziona. Il risultato è funzionante e anche robusto, ma non ancora adatto per essere un reale web server internet.