Se vogliamo iniziare a conoscere il fantastico mondo di Zend Framework sarà necessario creare un ambiente di sviluppo adatto alle nostre esigenze. In questa guida vedremo come configurare la nostra distribuzione Ubuntu per poter lavorare in locale con tutti gli strumenti necessari.
Lo scopo di questo tutorial è quello di ottenere un sistema di sviluppo per Zend Framework
Configurazione del sistema operativo
Quello che noi vogliamo ottenere è un server LAMP configurato ah hoc per le nostre applicazioni web. Per prima cosa installiamo MySQL:
sudo apt-get install mysql-server mysql-client |
Se vogliamo rendere accessibile il server MySQL dall’esterno dobbiamo modificare il file /etc/mysql/my.conf
sudo nano /etc/mysql/my.conf |
e commentare la linea
#bind 127.0.0.1 |
Questa configurazione del sistema utilizzerà Zend Server CE che comprende la propria versione di PHP e le librerie vere e proprie di Zend Framework. Fortunatamente Zend ha messo ha disposizione i repository contenenti tutti i pacchetti per le varie distribuzioni di Linux tra cui Debian/Ubuntu. Seguiamo quindi le indicazioni fornite aggiungiamo il nostro repository al file /etc/apt/source.list.
deb http://repos.zend.com/zend-server/deb server non-free |
Recuperiamo la chiave pubblica del repository e aggiorniamo la lista dei pacchetti:
sudo -i wget http://repos.zend.com/deb/zend.key -O- | apt-key add - sudo apt-get update |
Possiamo ora scegliere di installare la versione 5.2 o 5.3 di PHP, procediamo con la versione 5.3.
sudo apt-get install zend-server-ce-php-5.3 zend-server-framework-extras |
Se tutto è andato a buon fine possiamo accedere al pannello di controllo di Zend Studio aprendo la pagina https://localhost:10082 (SSL) o http://localhost:10081 e impostiamo la nostra password di accesso.
Notiamo subito che il pannello di Zend Studio offre la possibilità di modificare facilmente le direttive di PHP. Modifichiamo subito la direttiva date.timezone da Server setup > Directives e impostiamo il valore UTC.
date.timezone = UTC |
Configurazione server web
Ora accedendo alla pagina http://localhost dovremmo essere in grado di vedere la pagina di benvenuto di Apache.
Ipotizziamo di voler iniziare a creare la nostra prima applicazione web chiamata myapp. Sarebbe sufficiente accedere a localhost e lasciare un unico hostname, ma nel caso di più applicazioni ci troveremmo con qualche difficoltà. Utilizzeremo quindi gli efficienti Virtual Hosts di Apache.
Modifichiamo il file /etc/hosts e aggiungiamo il nome myapp.local accanto all’indirizzo IP 127.0.0.1 in modo che il nostro sistema possa convertire l’hostname myapp.local con il rispettivo IP:
127.0.0.1 localhost myapp.local |
A questo punto creiamo il virtual host su Apache, apriamo un nuovo file myapp.local
sudo nano /etc/apache2/sites-available/myapp.local |
e incolliamo questi parametri:
<virtualHost _default_:80> ServerAdmin webmaster@localhost ServerName myapp.local DocumentRoot /home/user/projects/myapp/public <directory "/home/user/projects/myapp/public"> Order Deny,Allow Allow from all Options -Indexes </directory> ErrorLog /var/log/apache2/error_myapp.log LogLevel warn CustomLog /var/log/apache2/access_myapp.log combined ServerSignature On </virtualHost> |
Potete subito notare che la DocumentRoot è /home/user/projects/myapp/public. In questo caso i file di progetto saranno posti all’interno della directory /home/user/projects/myapp e la directory visibile è public.
Non ci resta ora che abilitare il nostro virtual host e riavviare la rete con i seguenti comandi.
sudo a2ensite myapp.local sudo /etc/init.d/networking restart |
Se in questo momento proviamo ad accedere alla pagina http://myapp.local dovremmo ottenere un errore di apache perché non è stata trovata ancora nessun file.
Configurazione IDE
Zend rilascia un proprio IDE denominato Zend Studio, basato su Eclipse sviluppato unicamente allo scopo di progettare applicazioni web con Zend Framework. Personalmente preferisco utilizzare NetBeans che si presta bene al nostro scopo. Possiamo quindi installare NetBeans dai repository di Ubuntu oppure direttamente scaricando il pacchetto fornito dal sito ufficiale. Nel primo caso sarà sufficiente lanciare il comando
sudo apt-get install netbeans |
. Preferisco senza dubbi installare NetBeans manualmente per due motivi: è più aggiornato ed è possibile scegliere di installare solo la versione per PHP (circa 25 MB).
Scarichiamo il file netbeans-6.8-ml-php-linux.sh, rendiamolo eseguibile e lanciamolo come root:
chmod +x netbeans-6.8-ml-php-linux.sh sudo ./netbeans-6.8-ml-php-linux.sh |
apparirà una procedura guidata che vi assisterà nell’installazione, non è necessario modificare nessun parametro.
Creiamo la directory dei nostri progetti
mkdir -p ~/projects |
Dal nostro menu delle applicazioni oppure direttamente da linea di comando (netbeans) eseguiamo NetBeans. Selezioniamo New Project… dal menu File, scegliamo PHP e PHP Application, clicchiamo su Next. Diamo il nome al nostro progetto e nella casella Project Name e scriviamo myapp e in Sources Folder indichiamo il path /home/user/projects/myapp così com’era precedentemente specificato nel virtual host di apache, clicchiamo ancora su Next, lasciamo invariati i campi e siamo pronti a partire con lo sviluppo.
Possiamo scaricare l’esempio di progetto dalla guida ufficiale Zend Framework Quick Start e scompattarlo nella nostra directory di progetto appena creata e vederlo in azione alla pagina http://myapp.local.
Ottimo magari ci insegni pure come installare phpmyadmin direttamente e ti baciamo anche i piedi 😀
Per installare phpmyadmin è sufficiente installare il pacchetto fornito nel repository di zend server ce.
sudo apt-get install phpmyadmin-zend-server