PHP: Lezione 3 – Configurare gli strumenti

In questa lezione impareremo come creare un virtual host chiamato virtualphp.example.com che lavorera’ in una cartella locale chiamata phpdir, verificheremo le impostazioni del PHP sul nostro host virtuale e configureremo un database chiamato dbphp che useremo per lavorare nelle successive lezioni.

Chiameremo  il virtual host virtualphp.example.com che puntera’ ad una cartella chiamata phpdir. Questo host virtuale non interferira’ con nessuna applicazione online perche’ example.com e’ un dominio riservato dalla IANA per test ed esempi. Per maggiori informazioni visitare http://www.example.com.

Supponendo di lavorare in una macchina con S.O. Windows XP ed EasyPHP1.8 bastera’ seguire queste istruzioni:

1. Apriamo il file C:\Windows\System32\drivers\etc\hosts con un editor di testo (Notepad) ed inseriamo in  fondo al file in una riga vuota:

127.0.0.1 virtualphp.example.com
Chiudiamo e salviamo il file. Verifichiamo di aver correttamente impostato il nostro file hosts con questi semplici passaggi:

– Premiamo il pulsante Start in basso a sinistra, clicchiamo su esegui e digitiamo cmd quindi premiamo invio. Si aprira’ il prompt dei comandi di Windows su cui andiamo a scrivere:

ping virtualphp.example.com

Premendo il tasto invio dovremo ottenere un risultato simile a questo:

Esecuzione di Ping virtualphp.example.com [127.0.0.1] con 32 byte di dati:

Risposta da 127.0.0.1: byte=32 durata<1ms TTL=128

Cio’ significa che abbiamo configurato correttamente il nostro file hosts.

3. Creiamo una cartella chiamata phpdir all’interno di c:\Programmi\EasyPHP1.8\www. Questa diventera’ la nostra cartella di lavoro per il nostro host virtuale.

2. Indichiamo adesso al Server Web Apache la cartella di lavoro dove prendere i file per il nostro host virtuale, ossia: c:\Programmi\EasyPHP1.8\www\phpdir

Per fare cio’ avviamo easyPhp dal menu’ start — Programmi — easyphp 1.8 — easyphp. Se tutto funziona correttamente vedremo una finestra con due semafori (Apache e MySql) che diventeranno verdi dopo pochi attimi. Riduciamo ad icona tale finestra e clicchiamo sulla e accanto all’orologio sulla destra con il pulsante destro del mouse. Dal menu’ a tendina scegliamo la voce “Configurazione” — “Apache”. Nel file di configurazione di Apache andiamo ad inserire in fondo le seguenti righe:

NameVirtualHost 127.0.0.1:80

<VirtualHost 127.0.0.1:80>
DocumentRoot “c:\Programmi\EasyPHP1.8\www”
ServerName localhost
</VirtualHost>
<VirtualHost 127.0.0.1:80>
DocumentRoot c:\Programmi\EasyPHP1.8\www\phpdir
ServerName virtualphp.example.com
<Directory c:\Programmi\EasyPHP1.8\www\phpdir>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny<br />
Allow from all
</Directory>
</VirtualHost>

Utilizzando XAMPP l’aggiunta degli host virtuali avviene inserendo le righe riportate sopra nel file:

xampp\apache\conf\extra\httpd-vhosts.conf

Editiamo poi il file httpd.conf ed aggiungiamo:

# Virtual hosts
include conf/extra/httpd-vhosts.conf

Per rendere effettive le modifiche occorre riavviare apache. Per verificare che non ci siano errori clicchiamo sulla e accanto all’orologio e scegliamo “File di log” — “Apache errori”.

4. Testiamo adesso il nostro lavoro. Andiamo nella cartella: c:\Programmi\EasyPHP1.8\www\phpdir e creiamo un file di testo chiamato test.php in cui inseriamo le seguenti righe:

<?php
phpinfo();
?>

Apriamo adesso il nostro browser Web (Firefox, Safari, Internet Explorer etc. etc.) e andiamo all’indirizzo: http://virtualphp.example.com/test.php e se tutto e’ stato fatto regolarmente dovremo vedere una schermata che indichera’ le informazioni su PHP:

PHP Version 4.3.10

Ed altre informazioni tecniche. Cio’ significa che abbiamo configurato tutto correttamente.

5. Prepariamo adesso il database MySql chiamato dbphp associato all’utente dbuser con password dbpassword a cui forniremo tutti i permessi per lavorare con quest’unico DataBase (DB). La modalita’ di lavoro piu’ rapida e’ da Prompt dei Comandi: accediamo al prompt: start — esegui — cmd<INVIO>

Digitiamo:

cd c:\Programmi\EasyPHP1.8\mysql\bin\<INVIO>

mysql -u root

Ci troveremo di fronte alla console di mysql:

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 23 to server version: 4.1.9-max

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.

mysql>

Nel caso in cui avessimo impostato una password per l’utente root accederemo alla console usando: mysql -u root -p

Creiamo quindi il DB:

CREATE DATABASE dbphp;

I comandi MySql non sono case sensitive ma occorre ricordarsi di inserire il ; finale al termine di ogni istruzione.

Spostiamoci sul DB appena creato:

USE dbphp;

Aggiungiamo l’utente che potra’ lavorare sul DB:

GRANT ALL PRIVILEGES ON dbphp.* TO dbuser@localhost IDENTIFIED BY “dbpassword”;

Rendiamo effettivi i privilegi:

FLUSH PRIVILEGES;

Usciamo dalla console dei comandi:

exit;

Chiudiamo il prompt dei comandi:

exit

Verifichiamo quindi che tutto e’ stato fatto correttamente. Andiamo nella cartella phpdir ed inseriamo il file testdb.php in cui inseriremo le seguenti righe:
<?php
$dbhost = ‘localhost’;
$dbusername = ‘dbuser’;
$dbpassword = ‘dbpassword’;
$dbnome = ‘dbphp’;
$connection = mysql_connect(“$dbhost”,”$dbusername”,”$dbpassword”) or die (“Impossibile collegarsi al server.”);
$db = mysql_select_db(“$dbnome”, $connection) or die(“Impossibile selezionare il database.”);
?>

Collegandoci all’indirizzo: http://virtualphp.example.com/testdb.php a video non otterremo nulla!Ottimo abbiamo configurato tutto correttamente. Non sempre non ottenere nulla e’ simbolo di errori, tutt’altro.

Vi invito, come esercizio, a creare un nuovo utente a cui concedere tutti i permessi utilizzando la comoda utility phpmyadmin ragigungibile a questo url:

http//127.0.0.1/mysql/

Un commento su “PHP: Lezione 3 – Configurare gli strumenti”

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.