2. Installazione e Aggiornamento

In questo capitolo trattiamo l'installazione e l'aggiornamento di Zikula, due processi fondamentali per utilizzare correttamente il CMS.

2.1. Requisiti di sistema

Analizziamo brevemente i requisiti minimi e consigliati per utilizzare Zikula.

Qualsiasi WebServer, Apache raccomandato
Zikula funziona con tutti i WebServer, si consiglia però di utilizzare Apache in quanto alcune funzioni avanzate, come gli url brevi, funzionano solo con quest'ultimo.

Interprete PHP - Versione 4.3 o successiva
La versione più vecchia di PHP che può eseguire Zikula è la 4.3, tuttavia si consiglia la 4.4 o successiva.
Zikula è pienamente compatibile con PHP5 e la prossima versione, la 2.0, non supporterà più PHP4.

Configurazione PHP
Quando utilizzato in abbinamento a moduli di terze-parti la variabile register_globals dovrebbe essere disattivata e la variabile magic_quotes_gpc dovrebbe essere abilitata per motivi di sicurezza.
Zikula di per sé non necessità di questa configurazione.

Database MySQL, versione 4.1.6 o successiva
Zikula è pienamente compatibile con MySQL 5, la compatibilità con MySQL 3.x invece non è garantita.

Almeno 16MB di spazio su hard disk
Per siti piccoli si consiglia però di avere almeno 20MB, mentre per siti grandi che intendono pubblicare anche materiale multimediale si consiglia più di 100MB.
Tenete conto che con il passare del tempo la dimensione del database, e di conseguenza lo spazio richiesto, continuano ad aumentare.

Almeno 8MB di memoria RAM, 16 consigliati
Sebbene 8MB siano sufficienti per installare e utilizzare Zikula, se ne consigliano almeno 16, soprattutto se si intendi installare moduli di terze-parti.

2.2. Installazione

Vediamo ora passo per passo come installare Zikula sul vostro server.
In alcuni passaggi l'installazione in locale è leggermente diversa dall'installazione su un server. Questa guida tratta entrambi i processi, quando vi saranno differenze verranno fatti dei distinguo.

Copia dei file su server locale

Se state installando Zikula in locale dovete individuare la cartella che corrisponde alla root del webserver e crearvi dentro una cartella con il nome del vostro sito. A questo punto scompattate il pacchetto di Zikula (Core o Full) e copiate i file nella cartella appena creata. Se preferite potete anche scompattarla direttamente dentro ed evitare di copiarli.

Copia dei file su server remoto

Nel caso in cui stiate effettuando un'installazione online dovete ovviamente caricare i file nella root del vostro webserver. Ci sono due modi per fare questo:

  • Scompattare il pacchetto in locale e caricare tutti i file sul server usando un programma ftp
  • Caricare sul server il pacchetto ancora compresso e scompattarlo usando ssh o il pannello di controllo del sito (in questo caso meglio se usate il pacchetto .zip)

La seconda opzione è MOLTO più comoda in quanto impiegherete davvero molto meno tempo a caricare un unico pacchetto e poi scompattarlo. Purtroppo non tutti i server supportano questa opzione (ad esempio cpanel di solito la supporta, plesk no), valutate voi in base al vostro hosting.

Iniziamo l'installazione

A questo punto aprite il vostro browser preferito e scrivete nella barra dell'indirizzo http://localhost/nomesito/ (se lo state installando in locale) o http://www.vostrosito.it/ (se lo state installando in remoto).
Se vedrete la schermata sottostante significa che avete posizionato correttamente i file, se invece dovesse darvi pagina non trovata controllate la loro collocazione e assicuratevi di non aver creato una cartella di troppo (es. http://localhost/zikula/nomesito/ ).

A questo punto, assodato che i file sono collocati correttamente, cliccate sul collegamento install script. Potete anche avviarlo scrivendo direttamente l'indirizzo http://localhost/nomesito/install.php o http://www.vostrosito.it/install.php

Passo 1: selezione della lingua

Selezionate la lingua italiana, se già non è selezionata, e cliccate su Prossimo.

Se la lingua italiana non è presenta nella lista significa che avete scaricato il pacchetto non localizzato e dovete installare la lingua italiana a parte. Installatela prima di proseguire! Durante il processo di installazione alcune informazioni (es. i nomi dei moduli, le categorie ecc) vengono lette dai file della lingua e salvate nel database, se installate Zikula in lingua inglese e mettete i file della lingua italiana queste informazioni rimarranno in inglese e dovrete cambiarle a mano.

Passo 2: accettazione della licenza

Zikula è rilasciato sotto licenza GPL, dovete accettarla per poterlo utilizzare.

  Passo 3: requisiti di sistema

Al terzo passo Zikula controlla che tutti i requisiti di sistema siano soddisfatti e vi informa di eventuali problemi. Può capitare, soprattutto se usate un server Linux, che vi manchino dei permessi di scrittura. In questo caso sarà sufficiente eseguire un paio di chmod (o sudo chmod) sui file/cartelle che l'installer vi segnala.


Una volta ottenuto il lascia passare, avanzate alla prossima schermata.

Passo 4:  inserimento credenziali del database


Se state installando Zikula sul server di un servizio di hosting i dati di accesso al database deve averveli forniti il vostro mainteiner. Se state installando in locale dovreste averli impostati voi, altrimenti fate riferimento alla guida che avete seguito per installare il server web.

In questo passaggio dovrete comunicare a Zikula che tipo di database andrà ad utilizzare, dove trovarlo e quali sono i dati di accesso.
  • Selezionate il database e il tipo di tabelle, se non siete sicuri su cosa selezionare lasciate l'opzione di default;
  • Inserite l'indirizzo del server database nel campo Host. Se state installando in locale è sicuramente localhost, ma è probabile sia così anche se installate su un server (spesso il server web e il server mysql si trovano sulla stessa macchina)
  • Inserite il nome utente;
  • Inserite la password; se state installando in locale potrebbe non esserci una password;
  • Inserite il nome del database. Importante: se state installando Zikula sul vostro host, potrebbe essere che il database sia già stato creato e voi non siate autorizzati a crearne altri. In questo caso siete obbligati ad inserire il nome che il vostro host vi ha fornito. Se invece state installando in locale o avete i permessi di creare database potete scegliere il nome che preferite.
  • Il prefisso delle tabelle è utile in caso lo stesso database sia condiviso. Inserendo infatti un vostro prefisso sarete certi che non vi saranno conflitti. Se non sapete cosa mettere lasciate pure il valore di default;
  • La checkbox "Crea il database" fa riferimento al discorso del nome del database. Spuntatela solo se state creando il database, se invece lo state solo popolando (cioè creando al suo interno le tabelle) lasciatela non attiva.

A questo punto controllate i dati e proseguite. Non preoccupatevi, se dovessero esservi dei problemi (indirizzo errato, nome utente non trovato, database già esistente ecc) vi avviserà e vi chiederà di correggere i dati.

Passo 5: selezione del tipo di installazione

Ci sono due possibili installazioni da eseguire, quella base e quella completa.
La differenza è che la prima installa solo i moduli fondamentali per eseguire Zikula mentre la seconda installa ed attiva tutti i moduli che avete uplodato.

Io consiglio caldamente di effettuare quella base, così potrete scegliere con calma quali moduli attivare ed eviterete possibili problemi di memoria. Infatti può capitare, quando installare Zikula su un hosting che vi mette a disposizione poca memoria RAM, di incorrere in problemi se si installano troppi moduli contemporaneamente. Non dovrebbe succedere, ma per sicurezza io consiglio l'installazione base.
 
Passo 6: creazione dell'utente amministratore

Questo passo non presenta particolari difficoltà, dovete solo inserire i dati dell'utente con cui amministrerete il sito.

Notate che l'indirizzo (URL) a cui si fa riferimento NON è l'indirizzo del sito che state installando, ma l'indirizzo privato dell'amministratore (che ovviamente può essere quello del sito che state installando). Potete anche lasciarlo vuoto se preferite.
 
Passo 7: selezione del modulo per la pagina iniziale

A questo punto dovete selezionare quale modulo volete sia visualizzato in homepage. Ovviamente non è una scelta definitiva e potrete cambiarlo quando vorrete. Non preoccupatevi quindi se il modulo che vorreste (ad esempio News) non è stato ancora attivato!

Io consiglio di usare Tour, in quanto altri moduli potrebbero mostrarre alcuni innocui errori dovuti al fatto di non essere utilizzabili in homepage.

Passo 8: scelta del tema

Questa schermata vi fa selezionare quale tema volete utilizzare sul vostro sito. Il numero di temi disponibili può variare in base al pacchetto che state installando, di default sono 3. Per questa guida abbiamo usato il tema SeaBreeze.

Ovviamente anche il tema è modificabile in qualsiasi momento.
Proseguite.

A questo punto l'installazione è finita, cliccate su Vai al tuo nuovo sito per vederne il risultato.

Vi resta ancora una cosa da fare!

Per ragioni di sicurezza dovete cancellare dalla root del sito la cartella install e il file install.php, fino a quando non lo farete non potrete accedere al pannello di amministratore.

Ora avete davvero finito, non vi resta che iniziare a configurare e personalizzare il vostro sito come meglio preferite.

 


2.3. Passare a Zikula

Al momento non sono disponibili script automatici per trasferire i propri dati da altri CMS a Zikula, di conseguenza l'operazione va gestita personalmente.

2.4. Perchè aggiornare è fondamentale

Come ogni buon webmaster sa, tenere aggiornato il CMS che si utilizza è molto importante.

I motivi che rendono importante tenere il proprio sistema aggiornato sono 3:
  • sicurezza: ogni possibile falla di sicurezza che dovesse venir scoperta viene immediatamente corretta tramite un aggiornamento. Avere l'ultima versione installata è quindi il modo migliore per avere un sistema sicuro;
  • funzionalità: ogni versione di ogni CMS contiene degli errori e delle componenti che non funzionano correttamente. Ogni aggiornamento risolve alcuni problemi, aggiornare all'ultima versione significa correggere alcuni errori;
  • aggiornabilità: sembra un contro senso ma è così, è importante tenere il sistema aggiornato per poterlo aggiornare velocemente. Questo riguarda principalmente gli aggiornamenti che modificano il database in quanto se, per esempio, dovessero uscirne 6 in un anno e voi non li applicaste... alla fine sareste costretti ad applicarli tutti assieme in quanto devono essere sequenziali. Inoltre gli aggiornamenti vengono pubblicati come delle patch, ed è sicuramente più comodo applicare una patch che sostituire tutti i file usando il pacchetto completo.
Il nostro consiglio quindi è di tenere sempre aggiornato il vostro sistema.

2.5. Come aggiornare

Il primo passo per aggiornare il sistema è sempre lo stesso: EFFETTUARE IL BACKUP!
Ricordate sempre che un backup non è mai di troppo, prima di eseguire passaggi critici ricordatevi sempre di effettuarlo.

Il backup più importante è quello del database, in quanto li sono salvati tutti i vostri dati, ma se il vostro host vi mette a disposizione un metodo semplice per eseguire il backup di tutti i vostri file vi conviene usarlo.

Una volta che avete eseguito il backup potete procedere.

Aggiornamenti minori

Non tutti gli aggiornamenti sono uguali, qua trattiamo quelli minori che sono contraddistinti dal cambiamento della terza cifra della versione, come ad esempio da 1.0.0 a 1.0.1

Questi aggiornamenti in media non comportano rischi (se avete seguito i consigli di Cosa da sapere prima di iniziare a lavorare con Zikula!) in quanto non vanno a modificare il database e normalmente sostituiscono semplicemente alcuni file per correggere dei bug.

In questo caso dovete semplicemente usare un programma ftp per uploadare tutti i file della patch e sostituire i file obsoleti. Fine dell'aggiornamento.

Aggiornamenti medi

Sono questi gli aggiornamenti che variano la seconda cifra, come ad esempio da 1.0.9 a 1.1.0.

Questi aggiornamenti potrebbero modificare il database e quindi comportano dei rischi maggiori. Eseguite il backup!

In questo caso dovete usare un programma ftp per uploadare tutti i file della patch, sostituire i file obsoleti ed infine eseguire lo script http://www.vostrosito.it/upgrade.php
Se vi sono delle modifiche da apportare al database verranno effettuate. Fine dell'aggiornamento.

Aggiornamenti maggiori

Sono questi gli aggiornamenti che variano la prima cifra della versione, come ad esempio da 1.2.8 a 2.0.0

Questi sono aggiornamenti critici, in quanto vanno a modificare Zikula in profondità, e rappresentano un rischio (soprattutto se avete installato tanti moduli di terze-parti) e quindi è fondamentale eseguire un backup completo, database + file!

Come nel caso degli aggiornamenti normali, dovete usare un programma ftp per uploadare tutti i file della patch, sostituire i file obsoleti ed infine eseguire lo script http://www.vostrosito.it/upgrade.php
Se vi sono delle modifiche da apportare al database verranno effettuate. Fine dell'aggiornamento.


Con un pò di fortuna dovrebbe essere andato tutto bene, in caso contrario utilizzate il forum per chiedere aiuto spiegando dettagliatamente che problemi vi si sono presentati.

2.6. Aggiorare da PostNuke .764 a Zikula 1.0

Premessa: questa pagina è una traduzione, leggermente rielaborata, dell'articolo inglese scritto da craigh e ammodump.

Dato che l'aggiornamento da PostNuke .764 a Zikula 1.0.0 è più di un aggiornamento incrementale, ci sono alcuni cose da considerare prima di procedere. E' consigliato inoltre pianificare attentamente l'operazione.

Prepararsi all'aggiornamento

Backup prima, backup spesso

E' fondamentale eseguire un backup completo di file e database prima di procedere con l'aggiornamento. Suggerimento: puoi eseguire il backup di file e database quante volte vuoi durante il procedimento, in modo da non dover ricominciare da capo se qualcosa dovesse andare storto.

Create un ambiente di test

E' buona pratica simulare l'aggiornamento in un ambiente di test creato per l'occasione prima di eseguirlo sul sito vero e proprio. Potete creare una copia del vostro sito in locale oppure sul server stesso. Quest'ultima pratica ha il vantaggio di eseguire il test esattamente nello stesso ambiente in cui dovrà essere applicato.

Potete anche utilizzare lo stesso database semplicemente utilizzando un diverso prefisso per le tabelle.

Preparare il sistema

Aggiorna a PostNuke .764

Prima di procedere con l'aggiornamento assicurati che il tuo sito stia usando PostNuke .764, in quanto l'aggiornamento a Zikula è supportato solo da quest'ultima versione.

Aggiorna i tuoi moduli

Similmente a quanto detto per PostNuke, è consigliato aggiornare tutti i moduli all'ultima versione esistente per PostNuke .7 prima di aggiornare a Zikula. 

Pulisci il sistema

Questo è il momento migliore per ripulire la tua installazione di PostNuke .764! Si consiglia di disinstallare e rimuovere tutti i moduli che non vengono più utilizzati. Fai attenzione a non disinstallare i moduli che fanno parte di Zikula Core! Potresti utilizzare questa occasione per ripulire anche il filesystem del tuo sito. In questo caso si consiglia di prendere nota di tutte quelle cartelle personali che si intende ripristinare sotto Zikula.

Possibili tecniche

Aggiornamento graduale

Un'altra possibile precauzione da considerare è quella di adottare un aggiornamento graduale, vale a dire non aggiornare contemporaneamente tutti i moduli. Questa semplice tecnica può risultare molto utile per l'aggiornamento di siti di grandi dimensioni o che operano con poca memoria RAM. Uno dei problemi più comuni è che durante l'aggiornamento si esaurisca la memoria a disposizione.

La soluzione più semplice e veloce, dato per scontato che non abbiate la possibilità di aumentare il quantitativo di RAM, consiste nel disattivare tutti i moduli di Terze Parti (ad esempio il forum, pagesetter, calendari, gallerie ecc) e lasciare attivati solo quelli base (mi raccomando fate attenzione a non disattivare i moduli necessari, vedi sotto). In questo modo si riduce notevolmente la RAM disponibile e si procedere per gradi, aggiornando prima il sistema e poi singolarmente tutti i moduli.

Aggiornamento in locale

Una tecnica alternativa per superare limiti di risorse consiste nella copia del sito intero in un server locale su cui eseguire l'aggiornamento (qualsiasi computer moderno ha più RAM di quanta il vostro sito possa mai desiderarne) ed infine il ricaricamento online. In questo modo avrete molto più controllo sul processo, però dovrete perdere tempo a scaricare e successivamente ricaricare il materiale, senza contare che in tutto questo periodo dovrete chiudere il sito (o almeno il forum e le pagine modificate dagli utenti, altrimenti quei dati andranno persi).

Informazioni tecniche

Moduli del pacchetto Zikula Core necessari per l'aggiornamento:

Tra parentesi il nome italiano.

  • SysInfo (Informazioni Sistema)
  • Admin (Admin)
  • Blocks (Blocchi)
  • Admin_Messages (Messaggi Amministratore)
  • legal (Informazioni Legali)
  • Header_Footer (Header_Footer)
  • pnRender (pnRender)
  • Modules (Moduli)
  • Mailer (Mailer)
  • Settings (Impostazioni)
  • Groups (Gruppi)
  • Search (Ricerca)
  • Xanthia (Xanthia)
  • Users (Utenti)
  • Permissions (Permessi) 

Controlla i moduli

Molti dei moduli che tradizionalmente erano inclusi nella distribuzione di PostNuke non lo sono in Zikula (neanche nel pacchetto Zikula Full, vedi grafico più sotto). Alcuni di questi moduli sono: Autolinks, Censor, Comments, Downloads, Messages, pn_bbcode, pn_bbsmile, Polls, typetool and Web_links. Il motivo è che sono stati sostituiti da moduli di Terze Parti e il supporto non era più necessario.

Per ogni modulo non incluso in Zikula Full dovete controllare se la controparte di Terze Parti è pronta per Zikula. Molti dei moduli più popolari lo sono, ma altri no e alcuni sono stati abbandonati per mancanza di utilità o per la presenza di altri moduli simili.

E' ora di decidere

Se tutto sia pronto per l'aggiornamento  lo potete valutare solo voi. In base alla disponibilità di aggiornamenti, o nuove soluzioni, per i moduli che state utilizzando dovete fare le vostre conclusioni e decidere se aggiornare o aspettare. Molti moduli sono pronti, alcuni lo saranno presto e altri forse non lo saranno mai. Valutate tutte le possibilità, anche quella di cambiare i moduli utilizzati, e fate la vostra scelta.  

Non dovrebbe essere più facile?

Il Team di Zikula intende rilasciare una distribuzione specifica per l'aggiornamento da PostNuke .764 a Zikula 1.0.0 non appena tutti i moduli contenuti nel primo avranno una controparte nel secondo. Questo dovrebbe semplificare il procedimento. Se preferite aspettare questa distribuzione siete i benvenuti. PostNuke .764 verrà supportato fino al 1 Gennaio 2009, quindi non vi è alcuna fretta di aggiornare.

Un commento su Categorie e Topics

Gli amministratori che in PostNuke .764 non utilizzavano le categoria nel modulo News noteranno solo piccole differenze. Tutti i vostri topics verranno convertiti in categorie e le immagini rimarranno.

Gli amministratori che invece usavano sia categoria che topics noteranno che entrambe saranno unite nell'albero del modulo Categorie. Dovrete fare qualche prova per capire come funzionino ora.

Nota: se avrete la necessitò di creare o modificare l'immagine di topic/categorie dovrete farlo dalla pagina di amministrazione del modulo Categorie. 

Comparazione dei moduli di PostNuke e Zikula

Tabella comparativa dei moduli di PostNuke .764 e quelli di Zikula 1.0.0

PostNuke .764 Zikula 1.0.0 Pacchetto
AddStory **News VAO
Admin Admin Core
Admin_Messages Admin_Messages Core
Autolinks >> Multihook  
AvantGo AvantGo VAO
Banners Banners VAO
Blocks Blocks Core
Censor >> Multihook  
Comments >> EZComments  
Credits Credits VAO
Downloads >> Downloads  
Ephemerids Ephemerids VAO
Example terminated  
FAQ FAQ VAO
Groups Groups Core
Header_Footer Header_Footer Core
legal legal Core
LostPassword **Users Core
Mailer Mailer Core
MailUsers MailUsers VAO
Members_List Members_List VAO
Messages >> pnMessages  
Modules Modules Core
Multisites attualmente non funzionante
 
News News VAO
NewUser **Users Core
Permissions Permissions Core
pn_bbcode >> bbcode  
pn_bbsmile >> bbsmile  
pnRender pnRender Core
Polls >> Polls  
Quotes Quotes VAO
Ratings Ratings VAO
Recommend_Us Recommend_Us VAO
Referers Referers VAO
Reviews Reviews VAO
RSS >> Feeds Core
Search Search Core
Sections >> Pages VAO
Settings Settings Core
Sniffer Sniffer VAO
Stats Stats VAO
Submit_News **News VAO
Top_List Top_List VAO
Topics >> Categories Core
typetool >> Scribite  
User >> Users Core
Web_Links >> Web_Links  
Wiki >> Wiki_Code VAO
Xanthia >> Theme Core
Your_Account **Users Core
     
  Moduli aggiunti
 
  AuthLDAP VAO
  AuthPN Core
  Errors Core
  HitCount VAO
  ObjectData Core
  PageLock Core
  PendingContent VAO
  pnForm Core
  Profile Core
  SecurityCenter Core
  SysInfo Core
  Thumbnail VAO
  Tour Core
  Workflow Core

LEGENDA

  • ** funzionalità integrata in un altro modulo
  • >> sostituito dal modulo indicato
  • Modulo di Terze Parti
  • Core - moduli nel pacchetto Core
  • VAO - moduli nel pacchetto Value Addons
Multihook: http://community.zikula.org/module-Database-viewpub-tid-3-pid-16.htm
  http://code.zikula.org/projects/multihook
EZComments: http://community.zikula.org/module-Database-viewpub-tid-3-pid-31.htm
  http://code.zikula.org/projects/ezcomments
Downloads: http://community.zikula.org/module-Database-viewpub-tid-3-pid-76.htm
  http://code.zikula.org/projects/downloads
pnMessages: http://community.zikula.org/module-Database-viewpub-tid-3-pid-64.htm
  http://code.zikula.org/projects/pnmessages
bbcode: http://code.zikula.org/projects/bbcode
bbsmile: http://code.zikula.org/projects/bbsmile
Polls: http://community.zikula.org/module-Database-viewpub-tid-3-pid-172.htm
Scribite: http://community.zikula.org/module-Database-viewpub-tid-3-pid-165.htm
  http://code.zikula.org/projects/scribite
Web_Links: http://code.zikula.org/core/browser/branches/Web_Links_08x

EZComments e pnMessages non sono ancora completamente compatibili con Zikula 1.0.0 (sono però in uso su questo sito)