Drupal 7.x su Altervista in 10 mosse

Pubblicato da Nicola Rainiero il 28-05-2012 (aggiornato il 13-03-2014)

Seguono alcuni consigli pratici per installare e configurare Drupal sul servizio free hosting di Altervista senza ricorrere al pannello di controllo e soprattutto impostando SQLite come database.

Il servizio di free hosting offerto da Altervista permette di installare (dopo essersi autenticati si clicca su Accedi al pannello di controllo e dal menu in alto: AltersitoApplicazioni) “numerosi applicativi per arricchire i servizi offerti dal tuo sito”. Tra i servizi proposti c'è anche Drupal 7.8 con richiesta di database in classe 2 ( attivazione 500 AC[1], più 100 AC/mese). Questa procedura indolore e veloce consente di avere installato e perfettamente funzionante questo fantastico CMS rinunciando però alla possibilità di avere l'ultima versione disponibile e soprattutto la possibilità di usare SQLite (un database incorporato su un unico file che non richiede attivazione e spesa mensile di alcun AC).

Sono tutte rose e fiori? Ovviamente no! La versione proposta da Altervista è stata testata e ritenuta stabile con il proprio hosting, l'ultima versione disponibile di Drupal invece potrebbe presentare alcune incompatibilità o bug e non funzionare a dovere! Quindi potrebbe essere un salto nel buio...

La guida spiega passo dopo passo come installare e configurare Drupal 7.14 sul server di Altervista, per un dominio di terzo livello denominato “mio_sito”. Ho trovato validi consigli e guide in questo forum, che consiglio vivamente di consultare. (10/08/2012) Anche Drupal 7.15 funziona egregiamente su Altervista seguendo quanto riportato in questo articolo, ho notato però due cose:

  1. durante l'installazione e precisamente quando si importano i moduli in italiano ricompare l'inquetante “Error 500 - Internal server error”, è facilmente superabile ricaricando la pagina;
  2. apparentemente riconosce gli URL semplificati ma ha dei problemi con l'overlay (quel menu che si sovrappone in alto quanto si entra come amministratore o user) e soprattutto il test per abilitare glu URL semplificati non funziona. Ho risolto riscrivendo nella barra degli indirizzi: "MIO_SITO.altervista/admin/config/search/clean-urls" e selezionando la relativa casella.

(17/07/2012) Come è emerso nei commenti e come richiesto da Drupal, per poter installarlo su Altervista è necessario abilitare PHP in versione 5. Si può procedere così: dal Pannello di controllo si clicca Altersito sul menu in alto e a cascata Gestione File, poi si clicca sull'icona PHP 5 e nella nuova pagina che compare si verifica la versione di PHP impostata. Nel mio caso specifico è quella di default: la PHP 5.2. Nei vecchi domini di terzo livello invece potrebbe esserci ancora la 4 per ragioni di retro-compatibilità. Basta quindi impostare la 5.2 (la 5.3 dovrebbe funzionare lo stesso ma non l'ho testata) e cliccare il bottone salva. Oppure manualmente aggiungendo al file ".htaccess" le seguenti righe:

#
# Altervista configuration
#
# # av:php5-engine
AddHandler av-php53 .php

# # av:PHP-RG
php_flag register_globals off

#
# Apache/PHP/Drupal settings:
#
[...]

Ecco come procedere:

  1. Scaricare dal sito di Drupal l'ultima versione stabile, la relativa e aggiornata traduzione alla propria lingua, i moduli iniziali e il tema che si ritengono utili per il proprio sito.
  2. Scompattare il tutto su una cartella del proprio computer (per esempio “Drupal_7_14”) e inserire il file terminante in ".po" della propria lingua in “Drupal_7_14/profiles/standard/translations”, le cartelle dei moduli in “Drupal_7_14/sites/all/modules”, idem per l'eventuale tema preferito che andrà in “Drupal_7_14/sites/all/themes” e se si usa il modulo libraries le eventuali librerie in “Drupal_7_14/sites/all/libraries”.
  3. Per aver abilitati gli URL semplificati e quindi evitare di vedere per ogni pagina del proprio sito i caratteri iniziali “?q=”, modificare il file ".htaccess" in “Drupal_7_14” e togliere il commento (ovvero “#”) dalla riga 105: da “# RewriteBase /” a “RewriteBase /” se si copierà il tutto sulla directory radice del futuro sito. Se invece si vuole avere il proprio sito all'interno di una cartella denominata “mio_sito” per esempio allora il tutto diventerà “RewriteBase /mio_sito”.
  4. Rinominare il file “Drupal_7_14 /sites/default/default.settings.php” in “Drupal_7_14/sites/default/settings.php” ed aggiungere a riga 278 la seguente riga di inizializzazione: “ini_set('memory_limit', '64M');” ciò eviterà di vedere comparire il seguente messaggio “Error 500 - Internal server error”.
  5. Creare la cartella “files” in “Drupal_7_14/sites/default/” e se il proprio sistema operativo/filesystem lo permette dare i permessi di lettura e scrittura a quest'ultima cartella e al file “settings.php” rinominato in precedenza.
  6.  Usando un programma FTP come gFTP o FileZilla copiare tutto il contenuto all'interno della cartella “Drupal_7_14” nella radice del proprio sito altervista “/” o se la si vuole all'interno di “mio_sito” creare questa directory e copiarci tutto il contenuto[2].
  7. Attendere il caricamento di tutti i file e controllare se si sono conservati i permessi di lettura e scrittura imposti al punto 5).
  8. Incrociare le dita e dal proprio browser collegarsi al proprio sito “mio_sito.altervista.org” o se si è copiato il tutto all'interno di una cartella allora “mio_sito.altervista.org/mio_sito/”, procedere con l'installazione come qui raffigurato e nella terza schermata scegliere SQLite:



  9. Completare l'installazione e configurare i primi parametri: come il nome del sito e i dati per l'accesso dell'ammninistratore.
  10. Accedere al proprio sito e cominciare alla vera e propria configurazione del tema, dei moduli dei ruoli o pubblicare direttamente i primi contenuti.

 

 


[ 1] AC è l'acronimo di AlterCent, una moneta virtuale che permette di espandere le caratteristiche base offerte o guadagnare qualche centesimo di Euro.

[ 2] In genere i parametri per connettersi al proprio sito Altervista registrato come “mio_sito” sono:
HOST: ftp.mio_sito.altervista.org
NOME UTENTE: mio_sito
PASSWORD: password_mio_sito
PORTA: 21.




Potrebbero interessarti anche:

Nicola Rainiero

Ingegnere civile specializzato in geotecnica con l'ambizione di facilitare la propria attività lavorativa usando e creando software libero per un sapere condiviso e collettivo. Mi occupo anche di energie rinnovabili ed in particolare di geotermia a bassa entalpia. Sono da sempre appassionato di web design e modellazione 3D.

Commenti

Ciao,ho seguito le tue indicazioni ma quando tento di accedere al sito ottengo questo errore:Parse error: syntax error, unexpected T_CLASS in /membri/banzaay/drupal/includes/bootstrap.inc on line 283 Hai suggerimento.Grazie

Ciao Mk, non ho mai ricevuto un errore simile, ma editando il file incriminato alla linea 283 ho trovato questo commento: "* example by overriding offsetSet() and adding an automatic call to persist()." che non dovrebbe essere interpretato e generare errore. Forse si è rovinato il file bootstrap.inc? Prova a ricopiare quello contenuto in drupal-7.14 (il mio è identico all'originale) con un programma FTP e verifica se cambia qualcosa.

Però è strano a me con il vecchio PHP, non partiva neanche l'installazione! Sarà il caso di aggiornare l'articolo con questa novità! Buono a sapersi.

In primis complimenti, ero capitato per caso qualche mese fa sul tuo sito quando era ancora in costruzione e di nuovo per caso facendo una ricerca su google ci sono ricapitato oggi e posso dirti che il risultato finale è veramente carino; il sito è piacevole da visitare e credo ben fatto.Se posso vorrei chiederti che modulo usi nei nodi per lo slideshow delle immagini ed in che modo hai implementato lo slideshow degli articoli nella home.In fine, sempre se posso, mi permetto di consiglairti il modulo comment notify che permette di inviare delle notifiche quando viene inserito un nuovo commento in un nodo in modo da tenere vive le discussioni.Ciao

Grazie per i complimenti! Anche se lo ritengo ancora un work in progress (Drupal è infinito e si imparano/migliorano cose di giorno in giorno). Mi hai fatto un sacco di domande tecniche e dalle risposte articolate, proverò a risponderti in modo schematico ma spero esaustivo! Per lo slideshow delle immagini nei nodi, ho installato il modulo insert e colorbox. Ho configurato i contenuti con un nuovo campo immagine che può contenere infiniti valori e di volta in volta cambio il tipo di style per le immagini (la galleria viene in automatico quando ci sono 2 o più immagini colorbox da cui puoi scegliere lo stile in Configurazione). Per lo slideshow nella home ho creato un contenuto apposito chiamato "banner" che di volta in volta inserisco o modifico per farlo apparire in prima pagina in una views a slideshow. In questo momento non trovo il link da cui ho preso spunto e google non mi aiuta! E' solo un po' macchinoso da fare e soprattutto da tarare, ma non è difficile... prossimamente ne parlerò in un articolo apposito. Per il suggerimento di notify grazie per la dritta, ma ho visto che è poco aggiornato (per la 7 c'è una versione ancora in sviluppo vecchia di un anno) e "forse" si potrebbe riuscire a creare un effetto simile con admin/config/system/actions e admin/structure/trigger/comment ma devo approfondire l'argomento perché non li ho mai usati. Saluti

Intanto ti ringrazio per la dritta sul modulo colorbox, installato e funzionante alla perfezione, unico neo è che non c'è modo di utilizzarlo direttamente con fckeditor; Per quanto riguarda il modulo comment notify la versione dev è completamente funzionante, la uso senza problemi sul mio sito con l'ultima versione di drupal; è vero, si potrebbero usare le azioni o i ruoli di drupal per fare un qualcosa di simile ma poi gli utenti anonimi non ne avrebbero il controllo.Intanto vorrei aprofittare ulteriormente della tua pazienza per chiederti come hai ottenuto, ad esempio nella sezione articoli del tuo sito, l'impaginamento con immagine, titolo, anteprima troncata e link "mostra"? Che campi hai utilizzato nella vista? hai per caso usato anche panel? Non sono mai riusicto a mettere l'immagine come l'hai posizionata tu.

Per colorbox/insert ho seguito questa ottima guida  (sapevo di aver salvato il link da qualche parte!). Sono indeciso tra Notify e Comment Notify (li proverò con calma entrambi sul computer e poi vedrò quale inserire nel sito), perché da quello che ho visto rules/actions/triggers permettono al massimo di inviare una email solo all'amministratore. La mia paura è che da un aggiornamento all'altro cessi di funzionare, come mi era successo con il Forum e il modulo omonimo di Multilingual (tutto bloccato quando cliccavo sul link Forum) ancora prima di pubblicare on-line il sito, solo che in quel caso gli aggiornamenti erano rapidi e con la successiva versione tutto è ritornato a funzionare (poi alla fine non l'ho più usato perché inutile per questo sito). 
Per l'ultima domanda ho fatto così, in Tipi di contenuto --> gestisci la visualizzazione --> anteprima:
Image | Hidden | Immagine --> Stile di immagine: thumbnail e collega al contenuto
Body | Hidden | Riassunto o troncato --> lunghezza di testo 600
(tutto il resto nascosto)
Poi su Views --> Articoli--> Page:
Fields --> Contenuto: Immagine --> Style settings: Customize field HTML | HTML element: DIV | Create a CSS class: immagine_sx
Infine su style.css:

.immagine_sx {
  float: left;
  padding: 15px 15px 20px 0px;
}

Se fossi un buon designer avrei potuto metterci qualche bordo colorato o le ombre, ma ho preferito restare sul sobrio che va tanto di moda in questo periodo!

Ciao ti ringrazio per la guida, in fin dei conti ripete le stesse cose che spiega l'autore nella pagina di colorbox, infatti avevo già configurato colorbox anche se in maniera un pò diversa dato che ho il file system privato, ma ho trovato molto utile il suggerimento per il modulo wysiwyg_imagefield, era proprio quello che cercavo ma purtroppo non mi funziona.Per quanto riguarda i moduli notify e comment notify dipende dalle esigenze, secondo me comunque molto meglio il secondo. Si possono comunque ricreare le stesse azioni con il modulo rules e con i token di sostituzione per poter indicare gli indirizzi ai quali inviare le mail.Inoltre ti ringrazio per la dritta su views, appena ho un pò di tempo mi ci dedico; infine ti chiedo se puoi modificare gli oggetti dei commenti precedenti rimuovendo il mio indirizzo mail; lo spam è sempre troppo e non mi piace avere in chiaro il mio indirizzo mail.

Bene, ho tolto il tuo indirizzo email e penso di aver trovato una soluzione "quasi definitiva" per le notifiche, che ben si adatta alla mie esigenze. Ho provato in locale i due moduli e concordo che comment notify sia migliore, ma alla fine ho risolto con le azioni e i triggers! Adesso se qualcuno mi manda un commento ne ricevo notifica via email e quando approvo/salvo un commento dovrebbe darne comunicazione all'autore del commento, se ovviamente ha inserito l'email quando lo ha scritto. Saluti!

Ciao, ritorno a farti un'altra domanda, ma tu non hai problemi con le dimensioni del tuo database? Normalmente quanto è grande il tuo database? Sto facendo delle prove in locale ma vedo che il file ht.sqlite cresce esponenzialmente e rallenta di molto il sito.

Bentornato Mario, per quanto riguarda la mia esperienza (2 siti) ho notato che SQLite tende a raggiungere velocemente i 20 MB e poi è cresce più lentamente. Mi spiego meglio andando a spulciare i vari backup che ho fatto: dopo 3 mesi 21,1 MB (94 articoli pubblicati), dopo 6 mesi ancora 21,1 MB (196 articoli) e dopo 12 mesi 26,6 MB (276 articoli). Al momento non ho notato grossi rallentamenti. Potresti provare ad pulirlo/ottimizzarlo con "sqlitemanager.org" per esempio. Io lo avevo usato (con successo) solo nel database presente nel sito del mio computer, quello che mi era servito per le varie sperimentazioni in locale. Non mi sono ancora azzardato a toccare quello online! Forse in futuro lo copierò in locale e proverò ad ottimizzarlo.

Salve, volevo trasferire il mio sito in locale fatto con drupal in altervista, però quando vado sul sito mi dà PDOException: SQLSTATE[42000] [1044] Access denied for user 'grazianodelturco'@'localhost' to database 'Drupal' in lock_may_be_available() (line 167 of /membri/grazianodelturco/includes/lock.inc). Qual'è la soluzione del problema? grazie

E' da un bel pezzo che non faccio la migrazione, ma ricordo che per sistemare l'errore che mi dava (e non so se fosse lo stesso!): avevo dovuto copiare il database SQLite in modalità binario (in FileZilla per esempio basta andare su Trasferimento -> Modalità di trasferimento -> Binario), verificare i vari permessi nei 3 .htaccess, varificare il file settings.php con il percorso e nome del db esatto. AGGIORNAMENTO: Prima di loggarsi eseguire "http://mio_sito/update" seguendo passo passo le istruzioni sul browser ed infine andare su "http://mio_sito/admin/reports/status" e ricostruire i permessi di accesso ai nodi. Spero di essere stato utile. Saluti

ciao nell'installazione di drupal 7.26 con altervista con php5.3
quando devo scegliere SQlite
mi ferma e mi dice
Connessione al server del database fallita. Il server riporta il seguente messaggio: SQLSTATE[HY000] [14] unable to open database file.
mi sembra di avere fatto tutti i passi della guida qui sopra, mi sai aiutare per risolvere il problema?
grazie
Raffaello

Ciao, forse potrebbe essere un problema di permessi nella cartella "files" che contiene ".ht.sqlite". Dovresti provare con filezilla o un qualsiasi altro programma FTP a verificarli e a cambiarli nel caso in questo modo: la cartella dovrebbe averli tutti attivi (valore numerico "777") e poi i permessi del file sqlite dovrebbero essere solo per il "proprietario" attivi in lettura e scrittura (valore numerico "644"). Spero di esserti stato utile.