mercoledì 27 maggio 2009

Installazione MySQL, phpMyAdmin

Arrivato a questo punto non resta che l'installazione di MySQL per completare la configurazione dell'ambiente di test e sviluppo su Ubuntu 9.04. La cosa è piuttosto semplice: con l'ormai familiare Gestore pacchetti Synaptic (in Sistema » Amministrazione) trovo e marco per l'installazione il pacchetto 'mysql-server', confermo tutte le dipendenze e avvio l'installazione con il pulsante Applica.

Durante la configurazione mi viene chiesta una password per l'utente 'root' di MySql: la scelgo e ne prendo nota.

Una volta terminata l'installazione apro una finestra terminale (da Applicazioni » Accessori). Scrivo

mysql -u root -p

per effettuare il login come utente 'root' con password. Alla richiesta della password inserisco quella impostata in precedenza e compare la schermata di benvenuto con le informazioni sulla versione di MySQL installata.

Per uscire invece si utilizza semplicemente il comando

\q

Gestire MySQL sempre da finestra terminale può essere scomodo, quindi, visto che PHP è già disponibile, installo anche phpMyAdmin (pacchetto 'phpmyadmin' in Synaptic).

Una volta che il pacchetto e le sue dipendenze sono stati scaricati, inizia la configurazione guidata. Mi viene chiesto:

  1. Il webserver da configurare per l'esecuzione di phpMyAdmin: scelgo Apache2;
  2. Se configurare il database di phpMyAdmin con dbconfig-common: scelgo di sì;
  3. La password per l'utente amministratore del database: inserisco la password dell'utente 'root' scelta durante l'installazione di MySQL;
  4. Una ulteriore password applicativa per phpMyAdmin : lascio il campo vuoto per farla generare automaticamente.

Al termine di tutta la procedura, avvio Firefox e scrivo nella barra di navigazione 'http://localhost/phpmyadmin/': nella schermata di login mi connetto come 'root' e relativa password MySQL per verificare che tutto funzioni.

martedì 26 maggio 2009

Installazione PHP 5

Dopo aver installato Apache, il passo successivo da compiere per predisporre su Ubuntu 9.04 l'ambiente di test e sviluppo che mi serve è l'installazione e la configurazione di PHP 5.

Quindi in Sistema » Amministrazione » Gestore pacchetti Synaptic trovo con il pulsante Cerca il pacchetto 'php5' e lo marco per l'installazione. Tra i pacchetti marcati automaticamente come dipendenze è incluso il modulo PHP 5 per Apache2 ('libapache2-mod-php5'): per quelle che sono le mie esigenze non mi crea problemi configurare PHP come modulo Apache quindi non modifico niente e procedo all'installazione con Applica.

Una volta terminata l'installazione e la configurazione dei pacchetti, per verificare che tutto sia andato bene creo un file 'info.php' nella Document Root del Virtual Host 'test' cioè (vedere post precedente) '/home/nome_utente/public_html' dove nome_utente è il mio nome utente in Ubuntu. Il contenuto del file 'info.php' è il seguente:

<?php phpinfo(); ?>

Scrivendo 'http://test/info.php' nella barra di navigazione di Firefox compaiono come previsto le informazioni relative alla versione appena installata di PHP 5.

Chi si trovasse a seguire queste note senza aver configurato un Virtual Host come spiegato nel post precedente, può creare il file 'info.php' in '/var/www' cioè la Document Root del sito di default creato al momento dell'installazione di Apache. Per compiere questa operazione basterà utilizzare questo comando da Terminale (sudo è necessario per poter scrivere in '/var/www'):

sudo gedit /var/www/info.php

Inserire nell'editor le stesse righe riportate sopra e salvare. A questo punto 'http://localhost/info.php' mostrerà le informazioni sulla versione di PHP.

Potrà farmi comodo eseguire script PHP da finestra terminale, quindi sempre con la stessa procedura in Gestore pacchetti Synaptic trovo ed installo il pacchetto 'php5-cli'.

Una volta terminata l'installazione, da Applicazioni » Accessori » Terminale come verifica scrivo

php -v

Anche in questo caso saranno mostrate le informazioni sulla versione di PHP installata.

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.