sabato 23 maggio 2009

Installazione di Apache

Il primo problema da affrontare sul nuovo sistema è stata la creazione di un ambiente di sviluppo e test per applicazioni PHP/MySQL. In Windows utilizzo abitualmente Wamp, in Ubuntu avrei potuto utilizzare Xampp per Linux, ma ho preferito installare tutte le componenti necessarie (Apache, PHP5, MySql) separatamente pensando che fosse il genere di cosa che vale la pena imparare a fare.

L'installazione di Apache è un'operazione che non richiede più di qualche minuto.

  1. Sistema » Amministrazione » Gestione pacchetti Synaptic
  2. Tramite pulsante Cerca trovare il pacchetto 'apache2'
  3. Marcare per l'installazione
  4. Premere pulsante Applica

Tutti i pacchetti dipendenti sono marcati ed installati automaticamente. Una volta completata l'installazione basta avviare Firefox e scrivere 'http://localhost/' nella barra degli indirizzi per vedere comparire la pagina 'It works!' di Apache.

La Document Root predefinita è '/var/www' che dopo l'installazione contiene un file index.html che mostra la scritta 'It works!'. Il problema è che il proprietario di questa cartella è 'root' e non è quindi possibile scriverci con l'utente dell'account. Leggendo in giro si possono trovare più modi per ovviare al problema, io ho scelto di creare un Virtual Host ('test') con una Document Root all'interno della mia 'home'.

Per prima cosa ho creato la cartella '/home/nome_utente/public_html' dove nome_utente è il nome con cui effettuo il login ad Ubuntu.

Poi da terminale (Applicazioni » Accessori » Terminale) ho duplicato la configurazione del sito di default

sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/test

Ho modificato la configurazione del nuovo Virtual Host

sudo gedit /etc/apache2/sites-available/test

Ho modificato questa parte del file

<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName test
DocumentRoot /home/nome_utente/public_html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/nome_utente/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

La parte rimanente resta invariata. Chiaramente anche in questo caso nome_utente è il mio nome utente su Ubuntu.

Ho poi abilitato il nuovo Virtual Host e riavviato Apache con i comandi

sudo a2ensite test
sudo /etc/init.d/apache2 restart

Infine in Sistema » Amministrazione » Rete, sotto la tab Hosts tramite il pulsante Aggiungi ho inserito un nuovo alias 'test' per l'indirizzo IP 127.0.0.1.

Nella cartella '/home/nome_utente/public_html/' posso tranquillamente scrivere perché ne sono il proprietario e quindi vi ho creato un file index.html con questo contenuto

<html><body>Ciao mondo!!</body></html>

Aprendo Firefox e inserendo nella barra indirizzi 'http://test/' otteniamo 'Ciao mondo!', inserendo invece 'http://localhost/' ancora 'It works!' in quanto il sito di default è ancora attivo.

Una configurazione di questo tipo da utilizzare localmente per sviluppo e test penso possa andare più che bene. Mancano da installare PHP 5 e MySQL.

1 commento:

Anonimo ha detto...

Grazie per il tuo articolo. Finalmente sono riuscito a far funzionare il tutto!

Giovanni Calia - mentat59@gmail.com