Se c'è un problema con la configurazione di PHP, il risultato del comando darà alcuni consigli su cosa sistemare e su come farlo.



Documenti analoghi
Laboratorio di Information Retrieval SOLR. Marco Rossetti Based on Emanuele Panzeri s slides panzeri@disco.unimib.

Installazione LAMP. Installare un server lamp su Linux Ubuntu. Per installare un server LAMP in Ubuntu come prima cosa apriamo il terminale:

Apache 2, PHP5, MySQL 5

GovPay 2.0. Manuale Installazione

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Application Server per sviluppare applicazioni Java Enterprise

COME CREARE E COLLEGARSI AD UN DATABASE MICROSOFT SQL SERVER O SUN MYSQL

Xampp. Valeriano Maysonnave - A.A. 2014/2015 -

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

Creare un sito Multilingua con Joomla 1.6

2.1 Installazione e configurazione LMS [4]

INSTALLAZIONE DI JOOMLA! Guida alla installazione di Joomla!

ImporterONE Export Plugin Magento

Installazione del software Fiery per Windows e Macintosh

Installazione e caratteristiche generali 1

Laboratorio di Sistemi Programmare in Php con NetBeans Php. Programmare in Php con Xampp e NetBeans IDE

Guida introduttiva di F-Secure PSB

ImporterOne Manuale Export Plugin Prestashop

Guida all'installazione del CMS PrestaShop

Fiery Driver Configurator

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

ARCHIVIA PLUS - DOCPORTAL

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (utente singolo)

SPSS Statistics per Windows - Istruzioni di installazione per (Licenza per utenti singoli)

MonoDay 2010 FSGateway Ing. Torello Querci

Configurazione posta su ios

ISTRUZIONI INSTALLAZIONE PMANGO

PRESENTAZIONE. Mauro Rainis.

Guida all Installazione del ProxyFatturaPA

Problematiche SimulAtlas e Flash Player

filrbox Guida all uso dell applicazione DESKTOP Pag. 1 di 27

IBM SPSS Statistics per Mac OS - Istruzioni di installazione (Licenza per sito)

IBM SPSS Statistics per Windows - Istruzioni di installazione (Licenza per sito)

Tecnologie di Sviluppo per il Web

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

GateManager. 1 Indice. tecnico@gate-manager.it

IBM SPSS Statistics per Linux - Istruzioni di installazione (Licenza per sito)

Non sono supportate reti peer to peer, è necessario avere un server dedicato.

Creare un nuovo tema grafico ( skin")

Installazione di Filenet Content Services 5.3 di Emanuele Mattei (emanuele.mattei[at] .it)

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!)

SVILUPPO DEL BLOG Autori: Ilari Michele, Cimini Oscar, Zaleski Dawid

Guida Joomla. di: Alessandro Rossi, Flavio Copes

RepairsLab Manuale Utente. RepairsLab. Manuale Utente

FORMAZIONE PROFESSIONALE

SOFTWARE CLIENT PC WINDOWS

Il software di gestione immobiliare più facile da usare. Modulo Web v5.2.

Mon Ami 3000 MACommerce La soluzione per il commercio elettronico totalmente integrata con Mon Ami 3000

Moduli di Fatturazione Elettronica

MySidel application portal

Installazione di Moodle. Preparato per: Gruppo A, Piattaforma di E - Learning Preparato da: Cinzia Compagnone, Vittorio Saettone

Capitolo 4 Pianificazione e Sviluppo di Web Part

Creare servizi WMS a partire da DB SpatiaLite. Ivan Marchesini ivan.marchesini@irpi.cnr.it. CNR IRPI Perugia

Il Web Server e il protocollo HTTP

Corso basi di dati Installazione e gestione di PWS

Guida all installazione di Easy

Configuration Managment. Tutorial. Configuration Managment Creare un progetto SVN su Ubuntu. Creare un progetto SVN su Ubuntu.

COG.I.T.O. Manuale tecnico

1 Introduzione Installazione Configurazione di Outlook Impostazioni manuali del server... 10

Primi passi - Quick Start Guide

ENTRATEL - Installazione

Biotrends - Istruzioni per il Setup

Modulo 4 Il pannello amministrativo dell'hosting e il database per Wordpress

Corso Joomla per ATAB

Joomla: Come installarlo e come usarlo. A cura di

Installazione di TeamLab su un server locale

Aggiornamenti Sistema Addendum per l utente

ISPConfig: configurazione di un sito

XAMPP (a cura di Michele Acierno a.a. 2012/2013)

Laplink FileMover Guida introduttiva

Iniziamo la panoramica sul funzionamento dell'svn sulla suite S.A.

FOXWave Gestione gare ARDF IZ1FAL Secco Marco Sezione ARI BIELLA

Installazione e guida introduttiva. Per WebReporter 2012

PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152)

Manuale di Blogilo. Mehrdad Momeny Traduzione e revisione del documento: Valter Mura

GUIDA AI PROBLEMI DI ACCESSO E VISUALIZZAZIONE

Guida dell'amministratore di JMP 8 alle versioni con licenza annuale per Windows, Macintosh e Linux

Guida all uso di periferiche di archiviazione remota (NAS)

Corso ForTIC C2 LEZIONE n. 3

installazione

Mac Application Manager 1.3 (SOLO PER TIGER)

Il web server Apache Lezione n. 3. Introduzione

Guida di avvio per utenti remoti

Cimini Simonelli - Testa

Product Shipping Cost Guida d'installazione ed Utilizzo

MagiCum S.r.l. Progetto Inno-School

Sommario. Introduzione Architettura Client-Server. Server Web Browser Web. Architettura a Due Livelli Architettura a Tre Livelli

Esercitazione 4 JDBC

SharePoints è attualmente disponibile in Inglese, Italiano e Francese.

Programmazione Orientata agli Oggetti in Linguaggio Java

LABORATORIO PER IL DESIGN DELLE INTERFACCE PEGORARO ALESSANDRO CASSERO.IT MANUALE DI AGGIORNAMENTO, MANUTENZIONE E USO DEL SITO

FileMaker Server 11. Guida alla configurazione dell'installazione in rete

01/05/2013 Istruzioni per l installazione

INSTALLARE L AMBIENTE DI SVILUPPO PER JOOMLA 2.5

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

Transcript:

Introduzione CELIA (Corpus Elettronico delle Lingue dell Italia Antica) è un software open source per la gestione dell epigrafia dei corpus di lingue antiche. È scritto in PHP grazie al framework symfony Prerequisiti Prima di installare CELIA, si deve verificare che il server abbia ogni cosa installata e configurata correttamente. Una lettura approfondita di questo capitolo e l'esecuzione di tutti i passi richiesti per verificare la propria configurazione potrebbe far risparmiare molto tempo successivamente. Programmi di terze parti Prima di tutto, occorre verificare che il server disponga di un server web (come Apache), di un database MySQL e di PHP 5.2.4 (o una versione successiva). Per l'indicizzazione e la ricerca è necessaria un'installazione di Apache Solr 3.2.0 (o una versione successiva). Configurazione di PHP Siccome le configurazioni di PHP possono variare molto da un sistema operativo all'altro, o anche tra diverse distribuzioni Linux, occorre verificare che la propria configurazione di PHP soddisfi i requisiti minimi di symfony. Innanzitutto, assicurarsi di avere almeno PHP 5.2.4 installato, usando la funzione di libreria phpinfo(), oppure eseguendo php -v nella riga di comando. Fare attenzione: in alcune configurazioni, si potrebbero avere installate versioni di PHP diverse, una per la riga di comando e l'altra per il web. Quindi, scaricare lo script di symfony per la verifica della configurazione, al seguente indirizzo: http://sf-to.org/1.4/check.php Salvare lo script da qualche parte nella cartella radice del server web. Lanciare lo script di verifica della configurazione dalla riga di comando: $ php check_configuration.php Se c'è un problema con la configurazione di PHP, il risultato del comando darà alcuni consigli su cosa sistemare e su come farlo. Si dovrebbe eseguire lo script anche da un browser e sistemare gli eventuali problemi scoperti. Questo perché PHP può avere un file di configurazione php.ini diverso per questi due ambienti, con diverse impostazioni. ATTENZIONE Non dimenticare di rimuovere il file dalla cartella radice del server web quando si ha finito. Installazione di CELIA Inizializzare la cartella del progetto Il progetto usa Git. Per inizializzarlo: $ git clone gitolite@normandy.dmi.unipg.it:celia.git Inizializzare i sottomoduli L'applicazione utilizza diversi plugin di symfony per, ad esempio, la gestione degli utenti o la comunicazione con l'istanza di Solr. Questi plugin risiedono nella cartella plugins, mentre il framework stesso viene installato nella cartella lib/vendor del progetto. Sia il framework che i plugin vengono installati come sottomoduli del progetto tramite Git: $ cd celia $ git submodule init $ git submodule update Verifica dell'installazione Ora che CELIA è installato, verificare che sia tutto a posto, utilizzando la riga di comando per visualizzare la versione di symfony (attenzione alla V maiuscola):

$ php symfony -V Configurazione del database Il framework symfony supporta nativamente tutti i database supportati da PDO) (MySQL, PostgreSQL, SQLite, Oracle, MSSQL, ). Appoggiandosi a PDO, symfony è distribuito con due strumenti ORM: Propel e Doctrine. Quando si crea un nuovo progetto, Doctrine è abilitato in modo predefinito. La configurazione del database è semplificata dall'uso del task configure:database : $ php symfony configure:database "mysql:host=localhost;dbname=dbname" root mysecret Il task configure:database accetta tre parametri: il DSN di PDO, il nome utente e la password per accedere al database. Se non si ha bisogno di una password per accedere al database sul server di sviluppo, basta omettere il terzo parametro. Configurazione di Solr Un'installazione di Solr è già inclusa in un plugin, nella directory lib/vendor/solr. È un'installazione di default, l'unico file modificato è lo schema.xml. Nel caso in cui si voglia usare un'altra installazione basta aggiungere le seguenti righe nello schema, nella sezione types : <fieldtype name="epidoc" class="solr.textfield"> <analyzer> <charfilter class="solr.htmlstripcharfilterfactory"/> <tokenizer class="solr.whitespacetokenizerfactory"/> </analyzer> </fieldtype> Nella sezione fields : <!-- unique document id --> <field name="sf_unique_id" type="string" indexed="true" stored="true" required="true" /> <!-- indexed object class --> <field name="sf_meta_class" type="string" indexed="true" stored="true" required="true" /> <!-- indexed object id --> <field name="sf_meta_id" type="sint" indexed="true" stored="true" required="true" /> <!-- default search field --> <field name="sf_text" type="text" indexed="true" stored="true" multivalued="true" /> <field name="epidoc" type="epidoc" indexed="true" stored="true" multivalued="false"/> E dopo la definizione dei campi: <!-- Field to use to determine and enforce document uniqueness. Unless this field is marked with required="false", it will be a required field --> <uniquekey>sf_unique_id</uniquekey> <!-- field for the QueryParser to use when an explicit fieldname is absent --> <defaultsearchfield>sf_text</defaultsearchfield> <!-- copyfield commands copy one field to another at the time a document is added to the index. It's used either to index the same field differently, or to add multiple fields to the same field for easier/faster searching. --> <copyfield source="*_t" dest="sf_text" /> <copyfield source="*_s" dest="sf_text" /> Prima di far partire Solr bisogna creare la directory dei log. $ mkdir log/solr Una volta completata la configurazione si può far partire il servizio. Ovviamente Solr richiede un'installazione di Java. $ cd plugins/tjsolrdoctrinebehaviorplugin/lib/vendor/solr $ java -jar start.jar

Permessi sulla struttura delle cartelle Prima di provare ad accedere al nuovo progetto, occorre creare e impostare i permessi di scrittura sulle cartella cache/ e log/ ai livelli appropriati, in modo tale che il server web possa scriverci dentro: $ mkdir cache $ chmod 777 cache/ $ mkdir log $ chmod 777 log/ SICUREZZA L'applicazione è protetta da due delle vulnerabilità più diffuse sul web. Per prevenire gli attacchi XSS, l'escape dell'output è stato abilitato; per prevenire gli attacchi CSRF, è stato configurato un CSRF segreto. Configurazione del Web Server In ambito web è buona prassi posizionare all'interno della cartella radice del server web solo i file che necessitano l'accesso da parte del browser web, come ad esempio fogli di stile, JavaScript e immagini. All'interno della cartella web/ sono presenti alcune sottocartelle delle varie risorse web ( css/ e images/ ) e il front controller index.php. Questo è l'unico file PHP posizionato all'interno della cartella web. Tutti gli altri file PHP sono nascosti, non raggiungibili dal browser web, che è una buona soluzione per la sicurezza dell'applicativo. Configurazione del server web L'applicazione va resa accessibile esternamente usando un moderno server web, in questa sezione mostreremo la configurazione di Apache. Individuare e aprire il file di configurazione httpd.conf e aggiungere le seguenti righe alla fine dello stesso: <VirtualHost 127.0.0.1:80> ServerName celia.localhost DocumentRoot "/home/celia/web" DirectoryIndex index.php <Directory "/home/celia/web"> AllowOverride All Allow from All </Directory> Alias /sf /home/celia/lib/vendor/symfony/data/web/sf <Directory "/home/celia/lib/vendor/symfony/data/web/sf"> AllowOverride All Allow from All </Directory> </VirtualHost> NOTE L'alias /sf permette l'accesso alle immagini e file JavaScript necessari alla visualizzazione delle pagine predefinite di symfony e alla web debug toolbar. Su Windows, bisogna rimpiazzare la riga che definisce l' Alias con Alias /sf "c:\dev\celia\lib\vendor\symfony\data\web\sf" e /home/celia/web dovrebbe essere rimpiazzato con: c:\dev\celia\web La configurazione appena descritta rende il sito web raggiungibile al seguente URL: http://celia.localhost/ È possibile sostituire 8080 con qualsiasi altro numero, ma è preferibile utilizzare numeri superiori a 1024, in quanto non richiedono privilegi di amministratore.

SIDEBAR Configurazione di un dominio dedicato Il dominio celia.localhost utilizzato nella configurazione di Apache deve essere dichiarato localmente. Su un sistema Linux, modificare il file /etc/hosts. In un sistema Windows, invece, il file si trova nella cartella C:\WINDOWS\system32\drivers\etc\. Aggiungere la riga seguente: 127.0.0.1 celia.localhost Testare la nuova configurazione Riavviare Apache e controllare che sia possibile l'accesso alla nuova applicazione, aprendo un browser web e digitando http://celia.localhost/index.php/. TIP Se il modulo mod_rewrite di Apache è installato e attivo, è possibile rimuovere index.php/ dall'url. Questo è possibile grazie alle regole di riscrittura presenti nel file web/.htaccess. Licenza & Credits Parti di questa documentazione sono tratte dalla guida Getting Started with symfony ed è distribuita con licenza Creative Commons Attribuzione - Condividi allo stesso modo 3.0 Unported. This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.