====== SPIP CMS ======
**//Sistema di Content Management SPIP//**
===== Riferimenti =====
* Home page [[http://www.spip.net/]]
* Download area [[http://www.spip.net/spip-dev/]]
* On-line documentation [[http://www.spip.net/en]]
* Page layout: reference manual [[http://www.spip.net/en_rubrique199.html]]
* Mailing list [[http://listes.rezo.net/mailman/listinfo/spip-en|spip-en]]
===== 24 Mag 2004 - Installazione SPIP 1.7.2 =====
Scompattato l'archivio ''**SPIP-v1-7-2.zip**'' nella DocumentRoot, ci sono alcuni file con permessi diversi da 0644, rimessi a posto.
Essendo costituito da file ''.php3'', bisogna aggiungere a ''/etc/apache-ssl/httpd.conf'' delle direttive del tipo:
DirectoryIndex index.php index.php3 ...
AddType application/x-httpd-php .php .php3
AddType application/x-httpd-php-source .phps
Per un minimo di sicurezza si fanno appartenere tutti i file ad un utente non privilegiato (es. webmaster), diverso dall'utente del server web, file con permessi 0644 e directory con 0755. Prima della configurazione si devono fare delle eccezioni:
chown www-data:www-data CACHE/ Cache delle pagine generate
chown www-data:www-data IMG/
chown www-data:www-data ecrire/data/ Sessioni PHP, log di SPIP
chown www-data:www-data ecrire/ Per creare il file inc_connect.php3
In MySQL si crea il database (spip) e l'utente (spip):
mysqladmin -u root -p create spip
mysql> connect mysql;
mysql> GRANT ALL ON spip.* TO spip@localhost
-> IDENTIFIED BY 'secret';
mysql> FLUSH PRIVILEGES;
La configurazione iniziale si effettua via web andando all'indirizzo ''%%http://spip-server/ecrire/%%''. Dopo la configurazione è opportuno restringere un po' i permessi:
chmod 0640 ecrire/inc_connect.php3
chown webmaster.webmaster ecrire/data
Informazioni fornite per la configurazione (Personal Information):
Signature Nome Cognome
Your e-mail address nome@dominio.tld
Your login admin_name
Your password admin_secret
Il nome del sito si può cambiare dall'interfaccia di ammnistrazione, altrimenti è dentro una tabella MySQL e anche in un file ''ecrire/data''.
==== Note negative ====
* I file scompattati dall'archivio hanno permessi non corretti: file ''.css'' con attributo ''+x'', ...
* Purtroppo gli script hanno estensione ''.php3'', brutto specialmente quando si sta usando PHP4.
* Non supporta Pear DB. La versione ufficiale del programma supporta come backend solo MySQL, esistono delle versioni non ufficiali
* Il file ''ecrire/inc_connect.php3'' contiene la password di connessione a MySQL in chiaro ed ha permessi 0666!!! Per fortuna lo si può far appartenere all'utente del server web.
* Anche i file generati dinamicamente in queste directory hanno permessi 0666:
CACHE/*
IMG/*
ecrire/data/*
===== Aggiornamento ad una nuova versione =====
Si è fatto l'aggiornamento dalla versione **1.8 beta 1 CVS** alla **1-8pr1** a causa di un bug di sicurezza (esecuzione di comando da remoto) annunciato sulla mailing list.
==== Backup di tutto da sistema operativo ====
Per cautela si è provveduto a fare il backup della ''DocumentRoot'' e un dump del database:
tar zcvf spip.tgz /var/www/spip/
mysqldump -a --add-drop-table -h localhost -p -u spip spip > spip.dump
==== Backup del contenuto da Spip ====
Spip prevede un modo alternativo (misto web-ftp) per fare il backup in formato XML del contenuto dell'intero sito. Dalla pagina di amministrazione: //Configuration//, //Site Maintenance//, //Backup the database//. Per confermare l'operazione è necessario fare quella che Spip chiama //autenticazione via FTP//, in pratica ci si deve collegare via FTP al sito, creare (nella directory ''ecrire/data'') un file con il nome proposto durante la procedura, e quindi completare la procedura di backup dalla pagina web. Al termine il file di autorizzazione viene rimosso ed il dump si trova nel file ''ecrire/data/dump.xml.gz'' pronto per essere prelevato via FTP. Il backup creato in questo modo può essere reinstallato solo su una stessa versione di Spip.
==== Aggiornamento dei file ====
Dopo aver scompattato l'archvio ''**SPIP-v1-8pr1.zip**'' in una directory temporanea si controlla ownership e permessi dei file (l'archvio originale ha qualche pecca da questo punto di vista). Il suggerimento è che tutti i file e le directory appartengano ad un utente non privilegiato (ad esempio un webmaster), i file abbiano permesso 0644 e le directory 2755. In pratica:
chown -R webmaster:webmaster SPIP-v1-8pr1
find -type f SPIP-v1-8pr1 -print0 | xargs -0 chmod 0644
find -type d SPIP-v1-8pr1 -print0 | xargs -0 chmod 2755
Queste modifiche vanno fatte sui **file nuovi**, attenzione a **non cambiare i permessi** di file e directory in uso poiché alcuni devono essere scrivibili dall'utente che fa girare il server web (vedere le note a proposito dell'installazione). Quando i file nuovi avranno gli opportuni privilegi, devono essere copiati nella directory in uso, sovrascrivendo i vecchi.
==== Aggiornamento della struttura del database ====
Per completare l'upgrade si deve accedere all'area privata del sito Spip con le credenziali di amministratore e cliccare sul link proposto ("//if you are a site administrator, please click on this link//"). Questa procedura richiede una //autenticazione via FTP// del tutto simile a quella richiesta durante la procedura Spip di backup: si inizia la procedura da web, si crea via FTP il file richiesto in ''ecrire/data/admin_XXXX'', si completa la procedura via web.
paros:/home/www/www.rigacci.org/SPIP-v1-8pr1# find . -type f ! -perm 644
./habillage.css
./impression.css
./typographie.css
Le directory invece paiono a posto.
===== Come utilizzare gli stili per www.rigacci.org =====
== Top title ==
Occhiello, compare solo nella visualizzazione dell'articolo **e nella home page** (verificare se va bene).
== Title ==
Titolo principale dell'articolo.
== Subtitle ==
Sottotitolo, compare solo nella visualizzazione dell'articolo.
== Brief description ==
Descrizione di una riga o meno. Compare come tooltip quando si passa col mouse sul titolo dell'articolo. **Compare anche nella home page** al posto dell'incipit dell'articolo. Direi che non va bene e va cambiato.
== Deck ==
Breve introduzione all'articolo ed eventuale link al sito originale, del tipo %%[www.sito.org->http://www.sito.it/page.php]%%
== Postscript ==
===== How to use PHP code inside an article =====
See this article [[http://www.spip-contrib.net/Lancer-un-script-PHP-dans-un|Lancer un script PHP dans un article]].