Table of Contents
Questions & Feedback
Found a typo or an error?
Want to improve this document? Edit it.
Need support or have a technical question?
Post to the user mailing-list.
Master Symfony2 fundamentals
Symfony hosting done right
Discover the SensioLabs Support
Installare e configurare Symfony
Installare e configurare Symfony¶
Lo scopo di questo capitolo è quello di ottenere un'applicazione funzionante basata su Symfony. Fortunatamente, Symfony offre delle "distribuzioni", che sono progetti Symfony di partenza funzionanti, che possono essere scaricati per iniziare immediatamente a sviluppare.
Tip
Se si stanno cercando le istruzioni per creare un nuovo progetto e memorizzarlo con un sistema di versionamento, si veda Usare un controllo di sorgenti.
Scaricare una distribuzione Symfony2¶
Tip
Verificare innanzitutto di avere un server web (come Apache) installato e funzionante con PHP 5.3.8 o successivi. Per ulteriori informazioni sui requisiti di Symfony2, si veda il riferimento sui requisiti.
Symfony2 ha dei pacchetti con delle "distribuzioni", che sono applicazioni funzionanti che includono le librerie del nucleo di Symfony2, una selezione di bundle utili e alcune configurazioni predefinite. Scaricando una distribuzione di Symfony2, si ottiene uno scheletro di un'applicazione funzionante, che può essere subito usata per sviluppare la propria applicazione.
Si può iniziare visitando la pagina di scaricamento di Symfony2, http://symfony.com/download. Su questa pagina, si vedrà la Symfony Standard Edition, che è la distribuzione principale di Symfony2. Si possono fare due scelte:
Opzione 1) Composer¶
Composer è una libreria di gestione delle dipendenze per PHP, utilizzabile per scaricare Symfony2 Standard Edition.
Iniziare con lo scaricare Composer sul proprio computer. Se si ha curl installato, è facile:
1 | $ curl -s https://getcomposer.org/installer | php
|
Note
Se il computer non è pronto per usare Composer, si otterranno alcune raccomandazioni all'esecuzione del comando. Seguire tali raccomandazioni per far funzionare Composer correttamente.
Composer è un file PHAR eseguibile, che si può usare oer scarucare la Standard Distribution:
1 | $ php composer.phar create-project symfony/framework-standard-edition /percorso/web/Symfony
|
Tip
Per una versione esatta, sostituire 2.1.x-dev con l'ultima versione di Symfony (p.e. 2.1.2). Per detaggli, si veda la pagina di installazione di Symfony
Tip
Per scaricare i file dei venditori più velocemente e senza cartelle non necessarie
(p.e. "Tests"), aggiungere l'opzione --prefer-dist alla fine di ogni comando di
Composer.
Questo comando può richiedere diversti minuti, mentre Composer scarica la Standard Distribution e tutte le librerie dei venditori necessarie. Quando avrà finito, si dovrebbe avere una cartella simile a questa:
1 2 3 4 5 6 7 8 9 10 11 12 13 | percorso/web/ <- la propria cartella radice del web
Symfony/ <- l'archivio scompattato
app/
cache/
config/
logs/
src/
...
vendor/
...
web/
app.php
...
|
Opzione 2) Scaricare un archivio¶
Si può anche scaricare un archivio della Standard Edition. Qui, si possono fare due scelte:
- Scaricare un archivio
.tgzo.zip, sono equivalenti, scegliere quello che si preferisce; - Scaricare la distribuzione con o senza venditori. Se si pensa di usare molte librerie o bundle di terze parti e gestirli tramite Composer, probabilmente sarà meglio scaricare quella senza venditori.
Scaricare uno degli archivi e lo si scompatti da qualche parte sotto la cartella
radice del web del proprio server. Da una linea di comando UNIX, si può farlo con
uno dei seguenti comandi (sostituire ### con il vero nome del file):
1 2 3 4 5 | # per il file .tgz
$ tar zxvf Symfony_Standard_Vendors_2.1.###.tgz
# per il file .zip
$ unzip Symfony_Standard_Vendors_2.1.###.zip
|
Se si è optato per la versione senza venditori, occorerà leggere la prossima sezione.
Note
Si può facilmente modificare la struttura predefinita di cartelle. Si veda Modificare la struttura della cartelle predefinita per maggiori informazioni.
Aggiornare i venditori¶
A questo punto, si dispone di un progetto Symfony funzionale, nel quale si può iniziare a sviluppare la propria applicazione. Un progetto Symfony dipende da diverse librerie esterne. Queste vanno scaricate nella cartella vendor/ del progetto, tramite una libreria chiamata Composer.
A seconda di come Symfony è stato scaricato, si potrebbe aver bisogno o no di aggiornare i venditori. Aggiornare i venditori è sempre sicuro e garantisce di disporre di tutte le librerie necessarie.
Passo 1: Ottenere Composer (il nuovo bellissimo sistema di pacchetti PHP)
1 | $ curl -s http://getcomposer.org/installer | php
|
Ci si assicuri di scaricare composer.phar nella stessa cartella in cui risiede
il file composer.json (per impostazione predefinita, la radice del progetto
Symfony).
Passo 2: Installare i venditori
1 | $ php composer.phar install
|
Questo comando scarica tutte le librerie dei venditori necessarie, incluso
Symfony stesso, nella cartella vendor/.
Note
Se non si ha curl installato, si può anche scaricare il file installer
a mano, da http://getcomposer.org/installer. Mettere il file nel progetto ed
eseguire:
1 2 | $ php installer
$ php composer.phar install
|
Tip
Quando si esegue php composer.phar install o php composer.phar update,
composer eseguirà dei comandi post installazione/aggiornamento per pulire la cache
e installare le risorse. Per impostazione predefinita, le risorse saranno copiate nella cartella web.
Per creare collegamenti simbolici invece di copiare le risorse, si può
aggiungere una voce nel nodo extra del file composer.json con chiave symfony-assets-install
e valore symlink:
"extra": {
"symfony-app-dir": "app",
"symfony-web-dir": "web",
"symfony-assets-install": "symlink"
}
Passando relative invece di symlink a symfony-assets-install, il comando genererà
collegamenti relativi.
Configurazione¶
A questo punto, tutte le librerie di terze parti che ci occorrono sono nella
cartella vendor/. Abbiamo anche una configurazione predefinita dell'applicazione
in app/ e un po' di codice di esempio in src/.
Symfony2 dispone di uno strumento visuale per la verifica della configurazione del server, per assicurarsi che il server web e PHP siano configurati per usare Symfony2. Usare il seguente URL per la verifica della configurazione:
1 | http://localhost/config.php
|
Se ci sono problemi, correggerli prima di proseguire.
Quando tutto è a posto, cliccare su "Go to the Welcome page" per accedere alla prima "vera" pagina di Symfony2:
1 | http://localhost/app_dev.php/
|
Symfony2 dovrebbe dare il suo benvenuto e congratularsi per il lavoro svolto finora!
Tip
Per ottnere url brevi, si dovrebbe far puntare la docuemnt root del
server web o un host virtuale alla cartella Symfony/web/. Sebbene
non sia obbligatorio per lo sviluppo, è raccomandato nel momento in cui
l'applicazione va in produzione, perché tutti i file di sistema e di configurazione
diventeranno inaccessibili ai client. Perinformazioni sulla configurazione di
uno specifico server web, vedere la seguente
documentazione: Apache | Nginx .
Iniziare lo sviluppo¶
Ora che si dispone di un'applicazione Symfony2 pienamente funzionante, si può iniziare
lo sviluppo. La distribuzione potrebbe contenere del codice di esempio, verificare il file
README.rst incluso nella distribuzione (aprendolo come file di testo) per sapere
quale codice di esempio è incluso nella distribuzione scelta.
Per chi è nuovo in Symfony, in "Creare pagine in Symfony2" si può imparare come creare pagine, cambiare configurazioni e tutte le altre cose di cui si avrà bisogno nella nuova applicazione.
Dare un'occhiata anche al ricettario, che contiene una varietà di articoli su come risolvere problemi specifici con Symfony.
Note
Se si vuole rimuovere il codice di esempio dalla distribuzione, dare un'occhiata a questa ricetta: "Rimuovere AcmeDemoBundle"
Usare un controllo di sorgenti¶
Se si usa un sistema di controllo di versioni, come Git o Subversion, lo si
può impostare e iniziare a fare commit nel proprio progetto, come si fa normalmente.
Symfony Standard edition è il punto di partenza per il nuovo
progetto.
Per istruzioni specifiche su come impostare al meglio il proprio progetto per essere memorizzato in git, si veda Come creare e memorizzare un progetto Symfony2 in git.
Ignorare la cartella vendor/¶
Chi ha scelto di scaricare l'archivio senza venditori può tranquillamente
ignorare l'intera cartella vendor/ e non inviarla in commit al controllo di sorgenti.
Con Git, lo si può fare aggiungendo al file .gitignore la
seguente riga:
1 | /vendor/
|
Ora la cartella dei venditori non sarà inviata in commit al controllo di sorgenti.
Questo è bene (anzi, benissimo!) perché quando qualcun altro clonerà o farà checkout
del progetto, potrà semplicemente eseguire lo script php composer.phar install per
scaricare tutte le librerie dei venditori necessarie.





is a trademark of Fabien Potencier. All rights reserved.