XAMPP: Linux, Apache, MySQL e PHP facili: differenze tra le versioni

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Riga 1: Riga 1:
{{stub}}
{{stub}}


=Cos'XAMPP=
=Cos'è XAMPP=


Per poter creare un webserver sulla nostra macchina linux, abbiamo bisogno innanzitutto di '''Apache''' (il web server vero e proprio); poi bisogna aggiungere altre applicazioni che ci permettano di creare siti con contenuto dinamico, magari scritti in '''PHP''' (per esempio un bel CMS open source), quindi bisogna installare PHP e impostare Apache affinch� supporti questo linguaggio. Molto spesso, per�, Apache e PHP da soli non bastano, perch� la gestione dei contenuti del sito rischia di diventare laboriosa col passare del tempo: ed ecco che dobbiamo ricorrere ad un database, solitamente '''MySQL''' o PostgreSQL, che memorizzi i nostri dati e li restituisca quando servono ad Apache e PHP per visualizzarli nella pagina web del nostro sito. Installiamo, allora, anche un database e configuriamolo opportunamente. Magari ci farebbe comodo avere anche qualche bella libreria grafica (per esempio '''GDlib''') che ridimensioni ad hoc e visualizzi le nostre immagini: installiamo anche questa. Bene, a questo punto abbiamo un bel serverino web, abbastanza minimale, ma funzionale.... L'unico problema che potrebbe sorgere che non siamo dei Guru (o semplicemente non abbiamo tanta voglia di perdere tempo) e quindi corriamo il rischio di non riuscire a configurare tutto bene e con la dovuta sicurezza.
Per poter creare un webserver sulla nostra macchina linux, abbiamo bisogno innanzitutto di '''Apache''' (il web server vero e proprio); poi bisogna aggiungere altre applicazioni che ci permettano di creare siti con contenuto dinamico, magari scritti in '''PHP''' (per esempio un bel CMS open source), quindi bisogna installare PHP e impostare Apache affinché supporti questo linguaggio. Molto spesso, però, Apache e PHP da soli non bastano, perché la gestione dei contenuti del sito rischia di diventare laboriosa col passare del tempo: ed ecco che dobbiamo ricorrere ad un database, solitamente '''MySQL''' o PostgreSQL, che memorizzi i nostri dati e li restituisca quando servono ad Apache e PHP per visualizzarli nella pagina web del nostro sito. Installiamo, allora, anche un database e configuriamolo opportunamente. Magari ci farebbe comodo avere anche qualche bella libreria grafica (per esempio '''GDlib''') che ridimensioni ad hoc e visualizzi le nostre immagini: installiamo anche questa. Bene, a questo punto abbiamo un bel serverino web, abbastanza minimale, ma funzionale.... L'unico problema che potrebbe sorgere è che non siamo dei Guru (o semplicemente non abbiamo tanta voglia di perdere tempo) e quindi corriamo il rischio di non riuscire a configurare tutto bene e con la dovuta sicurezza.


Per alleviare il problema, su [http://www.apachefriends.org ApacheFriends] possiamo trovare il pacchetto che fa per noi: '''XAMPP'''.  
Per alleviare il problema, su [http://www.apachefriends.org ApacheFriends] possiamo trovare il pacchetto che fa per noi: '''XAMPP'''.  


''Ma cos'XAMPP?''<br>
''Ma cos'è XAMPP?''<br>
XAMPP (fino a poco tempo fa LAMPP) un insieme di programmi utili per la creazione di un web server: integra, infatti, Apache, MySQL, PHP, '''Perl''' e tanti altri programmi che ci permettono di creare, relativamente facilmente e velocemente, un serverino web che possa contenere il nostro sito.<br>
XAMPP (fino a poco tempo fa LAMPP) è un insieme di programmi utili per la creazione di un web server: integra, infatti, Apache, MySQL, PHP, '''Perl''' e tanti altri programmi che ci permettono di creare, relativamente facilmente e velocemente, un serverino web che possa contenere il nostro sito.<br>
''E la comodit� dov'?''<br>
''E la comodità dov'è?''<br>
La comodit� sta nel fatto che invece di scaricare e installare singolarmente tutti i programmi di cui abbiamo bisogno, con XAMPP basta scaricare un file compresso di circa 40 MB e decomprimerlo sul nostro pc. E se per qualche malaugurato motivo, in futuro, non ci va pi� di avere quella cinquantina di MB del nostro hard disk occupati da XAMPP, basta semplicemente cancellare la sua directory!
La comodità sta nel fatto che invece di scaricare e installare singolarmente tutti i programmi di cui abbiamo bisogno, con XAMPP basta scaricare un file compresso di circa 40 MB e decomprimerlo sul nostro pc. E se per qualche malaugurato motivo, in futuro, non ci va più di avere quella cinquantina di MB del nostro hard disk occupati da XAMPP, basta semplicemente cancellare la sua directory!
Oltre a questo, la comodit� di XAMPP sta anche nel fatto che molte sue funzioni possono essere intuitivamente configurate via web con un browser (alcune volte, per�, necessario mettere mano al nostro editor di testi preferito e girovagare nei files di configurazione).
Oltre a questo, la comodità di XAMPP sta anche nel fatto che molte sue funzioni possono essere intuitivamente configurate via web con un browser (alcune volte, però, è necessario mettere mano al nostro editor di testi preferito e girovagare nei files di configurazione).


Come gi� detto, il pacchetto contiene molti programmi utili, tutti pi� o meno configurabili facilmente. La lista dei programmi contenuti nella versione Linux di XAMPP la seguente:
Come già detto, il pacchetto contiene molti programmi utili, tutti più o meno configurabili facilmente. La lista dei programmi contenuti nella versione Linux di XAMPP è la seguente:


{{box|versione 1.4.14|Apache 2.0.54, MySQL 4.1.12, PHP 5.0.4 & 4.3.11 & PEAR + SQLite 2.8.9/2.8.14 + multibyte (mbstring) support, Perl 5.8.6, ProFTPD 1.2.10, phpMyAdmin 2.6.2-pl1, OpenSSL 0.9.7g, GD 2.0.1, Freetype2 2.1.7, libjpeg 6b, libpng 1.2.7, gdbm 1.8.0, zlib 1.1.4, expat 1.2, Sablotron 1.0, libxml 2.4.26, Ming 0.2a, Webalizer 2.01, pdf class 009e, ncurses 5.8, mod_perl 2.0.0-RC4, FreeTDS 0.62.4, gettext 0.11.5, IMAP C-Client 2002b, OpenLDAP (client) 2.2.13, mcrypt 2.5.7, mhash 0.8.18, eAccelerator 0.9.3, cURL 7.13.1, libxslt 1.1.8, phpSQLiteAdmin 0.2, libapreq 2.04-dev}}
{{box|versione 1.4.14|Apache 2.0.54, MySQL 4.1.12, PHP 5.0.4 & 4.3.11 & PEAR + SQLite 2.8.9/2.8.14 + multibyte (mbstring) support, Perl 5.8.6, ProFTPD 1.2.10, phpMyAdmin 2.6.2-pl1, OpenSSL 0.9.7g, GD 2.0.1, Freetype2 2.1.7, libjpeg 6b, libpng 1.2.7, gdbm 1.8.0, zlib 1.1.4, expat 1.2, Sablotron 1.0, libxml 2.4.26, Ming 0.2a, Webalizer 2.01, pdf class 009e, ncurses 5.8, mod_perl 2.0.0-RC4, FreeTDS 0.62.4, gettext 0.11.5, IMAP C-Client 2002b, OpenLDAP (client) 2.2.13, mcrypt 2.5.7, mhash 0.8.18, eAccelerator 0.9.3, cURL 7.13.1, libxslt 1.1.8, phpSQLiteAdmin 0.2, libapreq 2.04-dev}}


{{Warningbox| lo scopo di questa guida quello di spiegare come creare facilmente, tramite XAMPP, un piccolo webserver ad '''uso prettamente personale'''. Sul sito ufficiale di XAMPP menzionato pi� volte il fatto che questo pacchetto stato creato per essere utilizzato in ambienti di sviluppo, con tutti i problemi di sicurezza che ne derivano. Per rendere XAMPP pi� sicuro, necessario ricorrere ad una configurazione manuale dei vari servizi (come Apache, MySQL, PHP, ecc.): questi argomenti non verranno trattati in questa guida, per cui sarebbe opportuno leggere le guide presenti nella sezione ''Networking'', in particolare la guida [[LAMP: Linux, Apache, MySQL e PHP]].}}
{{Warningbox| lo scopo di questa guida è quello di spiegare come creare facilmente, tramite XAMPP, un piccolo webserver ad '''uso prettamente personale'''. Sul sito ufficiale di XAMPP è menzionato più volte il fatto che questo pacchetto è stato creato per essere utilizzato in ambienti di sviluppo, con tutti i problemi di sicurezza che ne derivano. Per rendere XAMPP più sicuro, è necessario ricorrere ad una configurazione manuale dei vari servizi (come Apache, MySQL, PHP, ecc.): questi argomenti non verranno trattati in questa guida, per cui sarebbe opportuno leggere le guide presenti nella sezione ''Networking'', in particolare la guida [[LAMP: Linux, Apache, MySQL e PHP]].}}


=Installazione=
=Installazione=
Riga 24: Riga 24:
A questo punto, installiamo il pacchetto semplicemente decomprimendolo in ''/opt'':
A questo punto, installiamo il pacchetto semplicemente decomprimendolo in ''/opt'':
<pre># tar xvfz xampp-linux-1.4.13.tar.gz -C /opt</pre>
<pre># tar xvfz xampp-linux-1.4.13.tar.gz -C /opt</pre>
in questo modo il pacchetto verr� installato in ''/opt/lampp''.
in questo modo il pacchetto verrà installato in ''/opt/lampp''.


{{Warningbox| sul sito ufficiale di XAMPP indicato che questo appena descritto il '''metodo pi� sicuro''' per installare correttamente il pacchetto. Inoltre si sconsiglia di usare programmi win32 di decompressione per estrarre i file in quanto questi potrebbero impedire la corretta installazione.}}
{{Warningbox| sul sito ufficiale di XAMPP è indicato che questo appena descritto è il '''metodo più sicuro''' per installare correttamente il pacchetto. Inoltre si sconsiglia di usare programmi win32 di decompressione per estrarre i file in quanto questi potrebbero impedire la corretta installazione.}}


Se abbiamo gi� una vecchia versione di XAMPP installata sul nostro sistema, questo comando sovrascriver� i vecchi files.
Se abbiamo già una vecchia versione di XAMPP installata sul nostro sistema, questo comando sovrascriverà i vecchi files.


Se finora non abbiamo ricevuto messaggi d'errore, vuol dire che abbiamo appena finito di installare XAMPP sulla nostra macchina.
Se finora non abbiamo ricevuto messaggi d'errore, vuol dire che abbiamo appena finito di installare XAMPP sulla nostra macchina.
Riga 34: Riga 34:
=Aggiornamento=
=Aggiornamento=
=Avvio di XAMPP=
=Avvio di XAMPP=
L'avvio di XAMPP semplice come la sua installazione. Infatti basta digitare da root shell:
L'avvio di XAMPP è semplice come la sua installazione. Infatti basta digitare da root shell:
<pre># /opt/lampp/lampp start</pre>
<pre># /opt/lampp/lampp start</pre>
e attendere un output simile a questo:
e attendere un output simile a questo:
Riga 41: Riga 41:
LAMPP: Starting MySQL...
LAMPP: Starting MySQL...
LAMPP started.</pre>
LAMPP started.</pre>
A questo punto il server web avviato.
A questo punto il server web è avviato.


Fino alla versione 0.9.4 il comando ''/opt/lampp/lampp start'' poteva semplicemente avviare o fermare XAMPP. Dalla versione 0.9.5 sono stati aggiunti numerosi '''comandi di controllo'''.
Fino alla versione 0.9.4 il comando ''/opt/lampp/lampp start'' poteva semplicemente avviare o fermare XAMPP. Dalla versione 0.9.5 sono stati aggiunti numerosi '''comandi di controllo'''.
Riga 177: Riga 177:
<pre># /opt/lampp/lampp startssl</pre>
<pre># /opt/lampp/lampp startssl</pre>


{{Warningbox| dalla versione 1.4.7, in XAMPP stata affiancata, alla versione 4.3.x di PHP, la versione 5. In caso di problemi di '''compatibilit� con la versione 5''', possibile selezionare quale versione caricare all'avvio dei servers, semplicemente digitando:
{{Warningbox| dalla versione 1.4.7, in XAMPP è stata affiancata, alla versione 4.3.x di PHP, la versione 5. In caso di problemi di '''compatibilità con la versione 5''', è possibile selezionare quale versione caricare all'avvio dei servers, semplicemente digitando:
<pre># /opt/lampp/lampp php4</pre>
<pre># /opt/lampp/lampp php4</pre>
per la versione 4.3.x, oppure digitando:
per la versione 4.3.x, oppure digitando:
<pre># /opt/lampp/lampp php5</pre>
<pre># /opt/lampp/lampp php5</pre>
per la versione 5.
per la versione 5.
Inoltre possibile verificare quale versione di PHP sia attiva, con il seguente comando:
Inoltre è possibile verificare quale versione di PHP sia attiva, con il seguente comando:
<pre># /opt/lampp/lampp phpstatus</pre>
<pre># /opt/lampp/lampp phpstatus</pre>
'''Appena installato, XAMPP si avvia di default con PHP 5 e Apache con supporto SSL'''}}
'''Appena installato, XAMPP si avvia di default con PHP 5 e Apache con supporto SSL'''}}
Riga 190: Riga 190:
=Configurazione=
=Configurazione=
==Primo avvio==
==Primo avvio==
Dopo aver installato il nostro XAMPP, non ci resta che configurarlo secondo le nostre esigenze. Per fare questo, apriamo il nostro '''browser''' preferito e inseriamo l'URL ''http://localhost''. Ci apparir� la schermata iniziale dove potremo scegliere la '''lingua del pannello di controllo''': clicchiamo, quindi, su ''Italiano''.
Dopo aver installato il nostro XAMPP, non ci resta che configurarlo secondo le nostre esigenze. Per fare questo, apriamo il nostro '''browser''' preferito e inseriamo l'URL ''http://localhost''. Ci apparirà la schermata iniziale dove potremo scegliere la '''lingua del pannello di controllo''': clicchiamo, quindi, su ''Italiano''.
La struttura del pannello di controllo molto intuitiva, con i vari men� sulla sinistra e la pagina di modifica centrale.
La struttura del pannello di controllo è molto intuitiva, con i vari menù sulla sinistra e la pagina di modifica centrale.


===Men� XAMPP===
===Menù XAMPP===
* Stato
* Stato
:Come indica il nome, qui potremo vedere lo '''stato di attivazione''' dei nostri servizi.
:Come indica il nome, qui potremo vedere lo '''stato di attivazione''' dei nostri servizi.
* Sicurezza
* Sicurezza
:Qui possibile monitorare a grandi linee lo '''stato di sicurezza''' di XAMPP.<br>
:Qui è possibile monitorare a grandi linee lo '''stato di sicurezza''' di XAMPP.<br>
:Al '''primo avvio di XAMPP''' vedremo che i nostri servizi sono configurati in maniera alquanto �aperta� (tutte le voci dovrebbero risultare ''insicure'', questo sempre dovuto al fatto che XAMPP stato pensato per un ambiente di sviluppo).<br>
:Al '''primo avvio di XAMPP''' vedremo che i nostri servizi sono configurati in maniera alquanto “aperta” (tutte le voci dovrebbero risultare ''insicure'', questo sempre dovuto al fatto che XAMPP è stato pensato per un ambiente di sviluppo).<br>
:A questo punto, come la stessa pagina ci suggerisce, eseguiamo un programma che effettua una serie di piccole verifiche di sicurezza. Digitiamo da root shell:
:A questo punto, come la stessa pagina ci suggerisce, eseguiamo un programma che effettua una serie di piccole verifiche di sicurezza. Digitiamo da root shell:
<pre># /opt/lampp/lampp security</pre>
<pre># /opt/lampp/lampp security</pre>
:l'output il seguente:
:l'output è il seguente:
<pre>XAMPP: Quick security check...
<pre>XAMPP: Quick security check...
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Your XAMPP pages are NOT secured by a password.
Riga 207: Riga 207:
:digitiamo ''yes'' e, quando richiesto, inseriamo la password (2 volte):
:digitiamo ''yes'' e, quando richiesto, inseriamo la password (2 volte):
<pre>XAMPP: Password protection active. Please use 'lampp' as user name!</pre>
<pre>XAMPP: Password protection active. Please use 'lampp' as user name!</pre>
:Da adesso, per poter accedere via web alla pagina di configurazione di XAMPP dovremo autenticarci con l'username �lampp� e la nostra password.
:Da adesso, per poter accedere via web alla pagina di configurazione di XAMPP dovremo autenticarci con l'username “lampp” e la nostra password.
<pre>XAMPP: MySQL is accessable via network.
<pre>XAMPP: MySQL is accessable via network.
XAMPP: Normally that's not raccomended. Do you want to turn it off? [yes]</pre>
XAMPP: Normally that's not raccomended. Do you want to turn it off? [yes]</pre>
:digitiamo ''yes'' per impedire che MySQL ascolti sulla nostra connessione internet.<br>
:digitiamo ''yes'' per impedire che MySQL ascolti sulla nostra connessione internet.<br>
:Verr� riavviato MySQL.
:Verrà riavviato MySQL.
<pre>XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
<pre>XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes]</pre>
XAMPP: Do you want to set a password? [yes]</pre>
Riga 217: Riga 217:
<pre>XAMPP: MySQL has no root password set!!!
<pre>XAMPP: MySQL has no root password set!!!
XAMPP: Do you want to set password? [yes]</pre>
XAMPP: Do you want to set password? [yes]</pre>
:Ora dobbiamo inserire la password di root per MySQL (che naturalmente la stessa di phpMyAdmin).
:Ora dobbiamo inserire la password di root per MySQL (che naturalmente è la stessa di phpMyAdmin).
<pre>XAMPP: The FTP password is still set to 'lampp'.
<pre>XAMPP: The FTP password is still set to 'lampp'.
XAMPP: Do you want to change the password? [yes]</pre>
XAMPP: Do you want to change the password? [yes]</pre>
:Adesso impostiamo la password per l'accesso FTP al nostro server.
:Adesso impostiamo la password per l'accesso FTP al nostro server.
:Verr� riavviato il demone ProFTPD.
:Verrà riavviato il demone ProFTPD.


:A questo punto possiamo verificare se la sicurezza del nostro XAMPP aumentata. Torniamo con il browser su ''http://localhost'': se tutto stato fatto regolarmente, ci verranno chiesti username e password per accedere al pannello di controllo di XAMPP (ricordiamoci che l'username � �lampp�).<br>
:A questo punto possiamo verificare se la sicurezza del nostro XAMPP è aumentata. Torniamo con il browser su ''http://localhost'': se tutto è stato fatto regolarmente, ci verranno chiesti username e password per accedere al pannello di controllo di XAMPP (ricordiamoci che l'username è “lampp”).<br>
:Logghiamoci nel pannello di controllo e torniamo a dove eravamo rimasti, cio� la finestra di ''Sicurezza'': se tutte le voci saranno �sicure�, allora vuol dire che abbiamo reso pi� sicuro il nostro XAMPP.
:Logghiamoci nel pannello di controllo e torniamo a dove eravamo rimasti, cioè la finestra di ''Sicurezza'': se tutte le voci saranno “sicure”, allora vuol dire che abbiamo reso più sicuro il nostro XAMPP.


{{ Warningbox | ovviamente questa procedura serve solo a dare un '''livello minimo di sicurezza''' a XAMPP.}}
{{ Warningbox | ovviamente questa procedura serve solo a dare un '''livello minimo di sicurezza''' a XAMPP.}}


===Men� Demo===
===Menù Demo===
Nella sezione ''Demo'', possibile trovare una serie di script che dimostrano il funzionamento di XAMPP: tralasciando le altre voci, il modo pi� semplice e intuitivo per verificare se sono correttamente configurati i moduli per la '''gestione delle immagini''' del nostro futuro sito cliccare su ''Grafica Istantanea'' (nel campo di testo, digitiamo quello che vogliamo, poi clicchiamo su OK: il risultato dovrebbe essere un'immagine con la nostra scritta) e su Grafica Flash (stesso procedimento di prima, ma in questo caso verifichiamo il funzionamento di '''MING''', che serve per produrre documenti flash).<br>
Nella sezione ''Demo'', è possibile trovare una serie di script che dimostrano il funzionamento di XAMPP: tralasciando le altre voci, il modo più semplice e intuitivo per verificare se sono correttamente configurati i moduli per la '''gestione delle immagini''' del nostro futuro sito è cliccare su ''Grafica Istantanea'' (nel campo di testo, digitiamo quello che vogliamo, poi clicchiamo su OK: il risultato dovrebbe essere un'immagine con la nostra scritta) e su Grafica Flash (stesso procedimento di prima, ma in questo caso verifichiamo il funzionamento di '''MING''', che serve per produrre documenti flash).<br>


Cliccando sulla voce ''phpinfo()'' possiamo leggere le informazioni circa lo stato del nostro parser PHP (per esempio per verificare se in esecuzione PHP5 o PHP4). Potremo vedere anche le informazioni riguardanti gli altri componenti del nostro XAMPP, come p.e. Apache2, MySQL, ecc.
Cliccando sulla voce ''phpinfo()'' possiamo leggere le informazioni circa lo stato del nostro parser PHP (per esempio per verificare se è in esecuzione PHP5 o PHP4). Potremo vedere anche le informazioni riguardanti gli altri componenti del nostro XAMPP, come p.e. Apache2, MySQL, ecc.


===Men� Strumenti===
===Menù Strumenti===
Cliccando su ''phpMyAdmin'', abbiamo accesso all'interfaccia web che ci permette di '''gestire i nostri database''' MySQL (argomento che esula dagli scopi di questa guida).<br>
Cliccando su ''phpMyAdmin'', abbiamo accesso all'interfaccia web che ci permette di '''gestire i nostri database''' MySQL.<br>
In questa sede importante sapere che per accedere a phpMyAdmin possiamo usare l'utente �root� (con la password che abbiamo impostato in precedenza) o l'utente generico �pma� (anche questo ha associata la password che abbiamo impostato in precedenza): quest'ultimo ha limitazioni che gli permettono esclusivamente di leggere e usare il contenuto delle tabelle dei database, ma non di crearle n� modificarle.
In questa sede è importante sapere che per accedere a phpMyAdmin possiamo usare l'utente “root” (con la password che abbiamo impostato in precedenza) o l'utente generico “pma” (anche questo ha associata la password che abbiamo impostato in precedenza): quest'ultimo ha limitazioni che gli permettono esclusivamente di leggere e usare il contenuto delle tabelle dei database, ma non di crearle modificarle.


Cliccando su ''Webalizer'' possiamo accedere ad un tool che ci permette di monitorare vari parametri del nostro webserver.
Cliccando su ''Webalizer'' possiamo accedere ad un tool che ci permette di monitorare vari parametri del nostro webserver.
Riga 312: Riga 312:


=Disinstallazione=
=Disinstallazione=
Disinstallare XAMPP semplice come installarlo. L'unica accortezza da prendere quella di fermarlo prima:
Disinstallare XAMPP è semplice come installarlo. L'unica accortezza da prendere è quella di fermarlo prima:
<pre># /opt/lampp/lampp stop</pre>
<pre># /opt/lampp/lampp stop</pre>
e attendere un output simile a questo:
e attendere un output simile a questo:

Versione delle 18:39, 12 lug 2005

Document-page-setup.png Attenzione: questo articolo è ancora incompleto e in fase di scrittura da parte del suo autore.

Sentitevi liberi di contribuire, proponendo modifiche alla guida tramite l'apposita pagina di discussione, in modo da non interferire con il lavoro portato avanti sulla voce. Per altre informazioni si rimanda al template.



Cos'è XAMPP

Per poter creare un webserver sulla nostra macchina linux, abbiamo bisogno innanzitutto di Apache (il web server vero e proprio); poi bisogna aggiungere altre applicazioni che ci permettano di creare siti con contenuto dinamico, magari scritti in PHP (per esempio un bel CMS open source), quindi bisogna installare PHP e impostare Apache affinché supporti questo linguaggio. Molto spesso, però, Apache e PHP da soli non bastano, perché la gestione dei contenuti del sito rischia di diventare laboriosa col passare del tempo: ed ecco che dobbiamo ricorrere ad un database, solitamente MySQL o PostgreSQL, che memorizzi i nostri dati e li restituisca quando servono ad Apache e PHP per visualizzarli nella pagina web del nostro sito. Installiamo, allora, anche un database e configuriamolo opportunamente. Magari ci farebbe comodo avere anche qualche bella libreria grafica (per esempio GDlib) che ridimensioni ad hoc e visualizzi le nostre immagini: installiamo anche questa. Bene, a questo punto abbiamo un bel serverino web, abbastanza minimale, ma funzionale.... L'unico problema che potrebbe sorgere è che non siamo dei Guru (o semplicemente non abbiamo tanta voglia di perdere tempo) e quindi corriamo il rischio di non riuscire a configurare tutto bene e con la dovuta sicurezza.

Per alleviare il problema, su ApacheFriends possiamo trovare il pacchetto che fa per noi: XAMPP.

Ma cos'è XAMPP?
XAMPP (fino a poco tempo fa LAMPP) è un insieme di programmi utili per la creazione di un web server: integra, infatti, Apache, MySQL, PHP, Perl e tanti altri programmi che ci permettono di creare, relativamente facilmente e velocemente, un serverino web che possa contenere il nostro sito.
E la comodità dov'è?
La comodità sta nel fatto che invece di scaricare e installare singolarmente tutti i programmi di cui abbiamo bisogno, con XAMPP basta scaricare un file compresso di circa 40 MB e decomprimerlo sul nostro pc. E se per qualche malaugurato motivo, in futuro, non ci va più di avere quella cinquantina di MB del nostro hard disk occupati da XAMPP, basta semplicemente cancellare la sua directory! Oltre a questo, la comodità di XAMPP sta anche nel fatto che molte sue funzioni possono essere intuitivamente configurate via web con un browser (alcune volte, però, è necessario mettere mano al nostro editor di testi preferito e girovagare nei files di configurazione).

Come già detto, il pacchetto contiene molti programmi utili, tutti più o meno configurabili facilmente. La lista dei programmi contenuti nella versione Linux di XAMPP è la seguente:

Info.png versione 1.4.14
Apache 2.0.54, MySQL 4.1.12, PHP 5.0.4 & 4.3.11 & PEAR + SQLite 2.8.9/2.8.14 + multibyte (mbstring) support, Perl 5.8.6, ProFTPD 1.2.10, phpMyAdmin 2.6.2-pl1, OpenSSL 0.9.7g, GD 2.0.1, Freetype2 2.1.7, libjpeg 6b, libpng 1.2.7, gdbm 1.8.0, zlib 1.1.4, expat 1.2, Sablotron 1.0, libxml 2.4.26, Ming 0.2a, Webalizer 2.01, pdf class 009e, ncurses 5.8, mod_perl 2.0.0-RC4, FreeTDS 0.62.4, gettext 0.11.5, IMAP C-Client 2002b, OpenLDAP (client) 2.2.13, mcrypt 2.5.7, mhash 0.8.18, eAccelerator 0.9.3, cURL 7.13.1, libxslt 1.1.8, phpSQLiteAdmin 0.2, libapreq 2.04-dev


Warning.png ATTENZIONE
lo scopo di questa guida è quello di spiegare come creare facilmente, tramite XAMPP, un piccolo webserver ad uso prettamente personale. Sul sito ufficiale di XAMPP è menzionato più volte il fatto che questo pacchetto è stato creato per essere utilizzato in ambienti di sviluppo, con tutti i problemi di sicurezza che ne derivano. Per rendere XAMPP più sicuro, è necessario ricorrere ad una configurazione manuale dei vari servizi (come Apache, MySQL, PHP, ecc.): questi argomenti non verranno trattati in questa guida, per cui sarebbe opportuno leggere le guide presenti nella sezione Networking, in particolare la guida LAMP: Linux, Apache, MySQL e PHP.


Installazione

Dopo aver scaricato il nostro pacchetto, non ci resta che aprire la shell e loggarci come root:

$ su

A questo punto, installiamo il pacchetto semplicemente decomprimendolo in /opt:

# tar xvfz xampp-linux-1.4.13.tar.gz -C /opt

in questo modo il pacchetto verrà installato in /opt/lampp.

Warning.png ATTENZIONE
sul sito ufficiale di XAMPP è indicato che questo appena descritto è il metodo più sicuro per installare correttamente il pacchetto. Inoltre si sconsiglia di usare programmi win32 di decompressione per estrarre i file in quanto questi potrebbero impedire la corretta installazione.


Se abbiamo già una vecchia versione di XAMPP installata sul nostro sistema, questo comando sovrascriverà i vecchi files.

Se finora non abbiamo ricevuto messaggi d'errore, vuol dire che abbiamo appena finito di installare XAMPP sulla nostra macchina.

Aggiornamento

Avvio di XAMPP

L'avvio di XAMPP è semplice come la sua installazione. Infatti basta digitare da root shell:

# /opt/lampp/lampp start

e attendere un output simile a questo:

Starting XAMPP 1.4.14...
LAMPP: Starting Apache...
LAMPP: Starting MySQL...
LAMPP started.

A questo punto il server web è avviato.

Fino alla versione 0.9.4 il comando /opt/lampp/lampp start poteva semplicemente avviare o fermare XAMPP. Dalla versione 0.9.5 sono stati aggiunti numerosi comandi di controllo.

Comando

Descrizione

start

Avvia XAMPP.

stop

Ferma XAMPP.

restart

Ferma e riavvia XAMPP.

startapache

Avvia solo Apache.

startssl

Avvia Apache con il supporto SSL. Questo comando attiva il supporto SSL permanentemente, p.e. se si riavvia XAMPP dopo questo comando, Apache partirà sempre con il supporto SSL.

startmysql

Avvia solo MySQL.

startftp

Avvia il server ProFTPD. I parametri standard di connessione via FTP sono: user "nobody", password "lampp". Questo comando attiva ProFTPD permanentemente, p.e. se si riavvia XAMPP dopo questo comando, si avvierà sempre anche ProFTPD.

stopapache

Ferma Apache.

stopssl

Ferma Apache con il supporto SSL. Questo comando disattiva il supporto SSL permanentemente, p.e. se si riavvia XAMPP dopo questo comando, Apache partirà sempre senza il supporto SSL.

stopmysql

Ferma MySQL.

stopftp

Ferma il server ProFTPD. Questo comando disattiva ProFTPD permanentemente, p.e. se si riavvia XAMPP dopo questo comando, ProFTPD non si avvierà più automaticamente.

security

Avvia una serie di piccole verifiche di sicurezza.


Per esempio, per avviare Apache con il supporto SSL, basta usare, da root shell, il seguente comando:

# /opt/lampp/lampp startssl
Warning.png ATTENZIONE
dalla versione 1.4.7, in XAMPP è stata affiancata, alla versione 4.3.x di PHP, la versione 5. In caso di problemi di compatibilità con la versione 5, è possibile selezionare quale versione caricare all'avvio dei servers, semplicemente digitando:
# /opt/lampp/lampp php4

per la versione 4.3.x, oppure digitando:

# /opt/lampp/lampp php5

per la versione 5. Inoltre è possibile verificare quale versione di PHP sia attiva, con il seguente comando:

# /opt/lampp/lampp phpstatus

Appena installato, XAMPP si avvia di default con PHP 5 e Apache con supporto SSL


Se abbiamo fatto tutto bene senza errori, a questo punto ci basta aprire la pagina http://localhost dal nostro browser preferito e configurare i nostri servizi da web.

Configurazione

Primo avvio

Dopo aver installato il nostro XAMPP, non ci resta che configurarlo secondo le nostre esigenze. Per fare questo, apriamo il nostro browser preferito e inseriamo l'URL http://localhost. Ci apparirà la schermata iniziale dove potremo scegliere la lingua del pannello di controllo: clicchiamo, quindi, su Italiano. La struttura del pannello di controllo è molto intuitiva, con i vari menù sulla sinistra e la pagina di modifica centrale.

Menù XAMPP

  • Stato
Come indica il nome, qui potremo vedere lo stato di attivazione dei nostri servizi.
  • Sicurezza
Qui è possibile monitorare a grandi linee lo stato di sicurezza di XAMPP.
Al primo avvio di XAMPP vedremo che i nostri servizi sono configurati in maniera alquanto “aperta” (tutte le voci dovrebbero risultare insicure, questo sempre dovuto al fatto che XAMPP è stato pensato per un ambiente di sviluppo).
A questo punto, come la stessa pagina ci suggerisce, eseguiamo un programma che effettua una serie di piccole verifiche di sicurezza. Digitiamo da root shell:
# /opt/lampp/lampp security
l'output è il seguente:
XAMPP: Quick security check...
XAMPP: Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes]
digitiamo yes e, quando richiesto, inseriamo la password (2 volte):
XAMPP: Password protection active. Please use 'lampp' as user name!
Da adesso, per poter accedere via web alla pagina di configurazione di XAMPP dovremo autenticarci con l'username “lampp” e la nostra password.
XAMPP: MySQL is accessable via network.
XAMPP: Normally that's not raccomended. Do you want to turn it off? [yes]
digitiamo yes per impedire che MySQL ascolti sulla nostra connessione internet.
Verrà riavviato MySQL.
XAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes]
Qui XAMPP ci chiede una password per l'utente generico "pma" (con limitato accesso al database) per MySQL e phpMyAdmin: digitiamo yes e inseriamo la nostra password.
XAMPP: MySQL has no root password set!!!
XAMPP: Do you want to set password? [yes]
Ora dobbiamo inserire la password di root per MySQL (che naturalmente è la stessa di phpMyAdmin).
XAMPP: The FTP password is still set to 'lampp'.
XAMPP: Do you want to change the password? [yes]
Adesso impostiamo la password per l'accesso FTP al nostro server.
Verrà riavviato il demone ProFTPD.
A questo punto possiamo verificare se la sicurezza del nostro XAMPP è aumentata. Torniamo con il browser su http://localhost: se tutto è stato fatto regolarmente, ci verranno chiesti username e password per accedere al pannello di controllo di XAMPP (ricordiamoci che l'username è “lampp”).
Logghiamoci nel pannello di controllo e torniamo a dove eravamo rimasti, cioè la finestra di Sicurezza: se tutte le voci saranno “sicure”, allora vuol dire che abbiamo reso più sicuro il nostro XAMPP.
Warning.png ATTENZIONE
ovviamente questa procedura serve solo a dare un livello minimo di sicurezza a XAMPP.


Menù Demo

Nella sezione Demo, è possibile trovare una serie di script che dimostrano il funzionamento di XAMPP: tralasciando le altre voci, il modo più semplice e intuitivo per verificare se sono correttamente configurati i moduli per la gestione delle immagini del nostro futuro sito è cliccare su Grafica Istantanea (nel campo di testo, digitiamo quello che vogliamo, poi clicchiamo su OK: il risultato dovrebbe essere un'immagine con la nostra scritta) e su Grafica Flash (stesso procedimento di prima, ma in questo caso verifichiamo il funzionamento di MING, che serve per produrre documenti flash).

Cliccando sulla voce phpinfo() possiamo leggere le informazioni circa lo stato del nostro parser PHP (per esempio per verificare se è in esecuzione PHP5 o PHP4). Potremo vedere anche le informazioni riguardanti gli altri componenti del nostro XAMPP, come p.e. Apache2, MySQL, ecc.

Menù Strumenti

Cliccando su phpMyAdmin, abbiamo accesso all'interfaccia web che ci permette di gestire i nostri database MySQL.
In questa sede è importante sapere che per accedere a phpMyAdmin possiamo usare l'utente “root” (con la password che abbiamo impostato in precedenza) o l'utente generico “pma” (anche questo ha associata la password che abbiamo impostato in precedenza): quest'ultimo ha limitazioni che gli permettono esclusivamente di leggere e usare il contenuto delle tabelle dei database, ma non di crearle né modificarle.

Cliccando su Webalizer possiamo accedere ad un tool che ci permette di monitorare vari parametri del nostro webserver.

Informazioni utili

Dove sono i files importanti di XAMPP?

File/Directory

Descrizione

/opt/lampp/bin/

Qui ci sono i comandi principali di XAMPP. Per esempio, da qui si può lanciare mysql o apache2.

/opt/lampp/htdocs/

La DocumentRoot di Apache.

/opt/lampp/etc/httpd.conf

Il file di configurazione di Apache.

/opt/lampp/etc/my.cnf

Il file di configurazione di MySQL.

/opt/lampp/etc/php.ini

Il file di configurazione di PHP.

/opt/lampp/etc/proftpd.conf

Il file di configurazione di ProFTPD. (dalla versione 0.9.5)

/opt/lampp/phpmyadmin/config.inc.php

Il file di configurazione di phpMyAdmin.


Disinstallazione

Disinstallare XAMPP è semplice come installarlo. L'unica accortezza da prendere è quella di fermarlo prima:

# /opt/lampp/lampp stop

e attendere un output simile a questo:

Stopping LAMPP 1.4.14
LAMPP: Stopping Apache...
LAMPP: Stopping MySQL...
LAMPP stopped.

A questo punto non ci resta che rimuovere la directory di XAMPP:

# rm -rf /opt/lampp



Autore: soter 12:53, Giu 23, 2005 (EDT)