XAMPP: Linux, Apache, MySQL e PHP facili

Da Guide@Debianizzati.Org.
Versione del 8 ott 2014 alle 18:39 di Selky (discussione | contributi) (→‎Avvio di XAMPP: aggiornamento guida)
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

Tutte le versioni supportate di Debian

Cos'è XAMPP

XAMPP (un tempo denominato LAMPP) è un insieme di programmi utili per la creazione di un server web. Integra, infatti, Apache, MySQL, PHP, Perl e molti altri strumenti, permettendo così di creare in modo facile e veloce, un serverino web che possa contenere il proprio sito.

XAMPP è concepito per ambienti di sviluppo e non di produzione. Per tale motivo potrebbe rilevarsi fatale. Dalla versione 1.7.1 è stato introdotto un nuovo concetto di sicurezza: tutte le pagina relative a XAMPP e phpMyAdmin sono accessibili solo in locale.
Resta il fatto che al termine dell'installazione:

  • Le pagine di XAMPP non sono protette da password e sono accessibili da chiuque conosca l'IP della macchina.
  • L'amministratore root di MySQL non ha password e qualsiasi utente locale può accedervi con diritti amministrativi.
  • PhpMyAdmin non ha password.
  • Il demone MySQL è accessibile via rete.
  • ProFTPD, a seconda della versione installata, utilizza l'utente "nobody" o "daemon", la password "lampp" o "xampp" e chiunque può accedervi.

Per questi motivi è necessario procedere con la messa in sicurezza come spiegato più avanti in questa stessa guida.

La configurazione manuale dei vari strumenti (Apache, MySQL, PHP, ecc...) non verrà trattata in questa guida, per approfondimenti leggere le guide presenti nella sezione Networking, in particolare Installare un ambiente LAMP: Linux, Apache2, SSL, MySQL, PHP5.


Warning.png ATTENZIONE
Per impostazione predefinita sia la procedura di installazione che il successivo utilizzo di XAMPP richiedono privilegi di amministratore


Vecchie versioni

Fino a qualche tempo fa XAMPP per Linux veniva rilasciato come archivio tar.gz solo per architetture a 32 bit. L'ultima versione è del 2012 xampp-linux-1.8.1.tar.gz.

Alcuni componenti della versione 1.8.1

  • Apache 2.4.3
  • MySQL 5.5.27
  • PHP 5.4.7
  • Perl 5.14.2
  • ProFTPD 1.3.4a
  • phpMyAdmin 3.5.2.2
  • OpenSSL 1.0.1c


Installazione archivio tar.gz

Dopo aver scaricato il pacchetto, spostarsi nella directory dove lo si è scaricato (esempio cartella Scaricati)

$ cd Scaricati

Accedere come utente root ed estrarre l'archivio nella cartella /opt

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

il pacchetto verrà installato nella direcotry /opt/lampp.

Se sul sistema è già installata una vecchia versione di XAMPP, questo operazione sovrascriverà i vecchi file.

Info.png Nota bene
XAMPP specifica 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 impedirne la corretta installazione.


Avvio e gestione

Per avviare XAMPP digitare nel terminale il seguente comando:

# /opt/lampp/lampp start

L'output sarà:

Starting XAMPP for Linux 1.8.1...
XAMPP: Starting Apache with SSL (and PHP5)...
XAMPP: Starting MySQL...
XAMPP: Starting ProFTPD...
XAMPP for Linux started.

A questo punto il server web è avviato.

  • Aprire il browser all'indirizzo http://localhost
  • Per gestire i servizi è necessario utilizzare determinati comandi.
Comando Descrizione
start Avvia tutti i servizi.
stop Ferma tutti i servizi.
restart Ferma e riavvia tutti i servizi.
startapache Avvia solo il web server Apache
startssl Avvia il web server Apache con il supporto SSL.

Questo comando attiva il supporto SSL permanentemente. 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" e password "lampp". Questo comando attiva ProFTPD permanentemente. Se si riavvia XAMPP dopo questo comando, si avvierà sempre anche ProFTPD.

stopapache Ferma il web server Apache.
stopssl Ferma il web server Apache con il supporto SSL.

Questo comando disattiva il supporto SSL permanentemente. 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. Se si riavvia XAMPP dopo questo comando, ProFTPD non si avvierà più automaticamente.

Esempio: avviare Apache con il "supporto SSL":
# /opt/lampp/lampp startssl
  • Per l'elenco completo dei comandi digitare nel terminale:
    # /opt/lampp/lampp --help

Nuove versioni

Le ultime versioni per Linux, disponibili per architetture a 32 e 64 bit, vengono rilasciate come eseguibile run. Le caratteristiche tecniche sono consultabili direttamente alla pagina XAMPP download

Installazione eseguibile run

Dopo aver scaricato il pacchetto, spostarsi nella directory dove lo si è scaricato (esempio cartella Scaricati).

$ cd Scaricati

Rendere eseguibile il file.

$ chmod 755 xampp-linux-versione_applicazione-installer.run

Accedere come utente root e avviare l'installazione grafica con procedura guidata.

# ./xampp-linux-versione_applicazione-installer.run

È possibile personalizzare le modalità di installazione a seconda delle proprie esigenze. Per visualizzare le opzioni disponibili:

# ./xampp-linux-versione_applicazione-installer.run --help


Terminata la procedura di installazione si può scegliere di avviare immediatamente XAMPP. In questo caso si aprirà automaticamente il browser di default dell'utente root e si avvierà anche manager-linux.run il gestore ad interfaccia grafica dei servizi e non solo.

Xampp manager01.png

Avvio e gestione

Nella directory principale sono presenti due file:

  • manager-linux.run (o manager-linux-x64.run) gestore con interfaccia grafica. Per avviarlo:
# ./manager-linux.run
  • ctlscript.sh uno script per l'utilizzo da riga d comando.

Le opzioni di quest'ultimo sono:

Comando Descrizione
start avvia il servizio/i servizi
stop ferma il servizio/i servizi
restart riavvia o avvia il servizio/i servizi
status visualizza lo stato del servizio/dei servizi

Esempio per riavviare il web server Apache:

# ./ctlscript.sh restart apache

Pagina iniziale e menù

La schermata iniziale è raggiungibile dal link http://127.0.0.1/ o http://localhost/

Solo la prima volta è necessario selezionare la lingua da utilizzare. Effettuata la scelta, si aprirà la seguente pagina:

Pagina demo01.png

La struttura è molto intuitiva: nella colonna di sinistra sono presenti varie voci di menù, mentre nella colonna di destra i relativi contenuti.

Stato

Permette di verificare lo stato di attivazione dei servizi.

Nuova versione:: se al termine della procedura di installazione si è scelto di avviare immediatamente XAMPP, il database MySQL risulterà disattivato e sarà necessario avviarlo.

Xampp control 01.png

Sicurezza

Da questa pagina è possibile monitorare lo stato di sicurezza di XAMPP.
Al primo avvio di XAMPP i vari moduli sono configurati in maniera alquanto “aperta” e vulnerabili.

Xampp control 02.png

Messa in sicurezza

Come suggerito nella stessa pagina, procedere con la messa in sicurezza dei moduli.
Da terminale digitare il comando:

# /opt/lampp/lampp security
Info.png Nota
Le password, dove richieste, dovranno essere inserite per sicurezza due volte.
A volte l'output generato sarà differente tra la vecchia e la nuova versione esaminate in questa guida.


  • Password pagina XAMPP
XAMPP:  Quick security check...
XAMPP:  Your XAMPP pages are NOT secured by a password.
XAMPP: Do you want to set a password? [yes] yes

digitare "yes" e, quando richiesto, inserire la password (due volte) e attendere conferma.

XAMPP: Password protection active. Please use 'lampp' as user name!

Vecchia versione: il nome utente è lampp. Quest'ultimo e la password appena scelta saranno necessari per effettuare l'accesso alla pagina di configurazione di XAMPP.

XAMPP:  Password protection active. Please use 'xampp' as user name!

Nuova versione: il nome utente è xampp. In locale non verranno richiesti i dati di login per accedere alla pagina di configurazione di XAMPP.


  • Proteggere MySQL in rete
XAMPP: MySQL is accessable via network.
XAMPP: Normally that's not raccomended. Do you want to turn it off? [yes]

Vecchia versione: non viene richiesto.
Nuova versione: digitare "yes" per impedire che il demone MySQL resti accessibile via rete.


  • Password MySQL e phpMyAdmin per l'utente generico
XAMPP:  The MySQL/phpMyAdmin user pma has no password set!!!
XAMPP: Do you want to set a password? [yes]]

Verrà chiesto se configurare o meno una password per l'utente generico pma (con poteri limitati all'accesso del database) per MySQL e phpMyAdmin.
Digitare "yes" e inserire per due volte la password prescelta.


  • Password MySQL e phpMyAdmin per l'utente root
XAMPP:  MySQL has no root passwort set!!!
XAMPP: Do you want to set a password? [yes]

Verrà chiesto se configurare o meno una password per l'utente root per MySQL (che naturalmente sarà la stessa di phpMyAdmin).
Digitare "yes" e inserire per due volte la password prescelta. Questa è fondamentale per l'utilizzo di XAMPP.


  • Password server FTP
XAMPP: The FTP password is still set to 'lampp'.
XAMPP: Do you want to change the password? [yes]

Vecchia versione: apparirà l'avviso che la password di default è 'lampp'.
Impostare una nuova password per l'accesso FTP al server.

XAMPP:  The FTP password for user 'daemon' is still set to 'xampp'.
XAMPP: Do you want to change the password? [yes]

Nuova versione: apparirà l'avviso che di default l'utente è daemon e l'attuale password xampp.
Impostare una nuova password per l'accesso FTP al server.

A questo punto verificare lo stato di sicurezza di XAMPP, aprendo il browser all'indirizzo http://localhost/, voce di menu Sicurezza.

Application

Contiene l'elenco dei moduli installati di Bitnami. Ogni modulo (CMS, forum, Blog, ecc...) è raggiungibile direttamente da questa pagina cliccando sulla voce "Access".

Dimostrazioni

Questo menu contiene una serie di esempi sul funzionamento di XAMPP. Due di queste demo presentano problemi.
La prima "Collezione CD" una volta effettuata la messa in sicurezza dei moduli non sarà più in grado di comunicare con MySQL info.
La seconda "Rubrica telefonica" nonostante sia ormai obsoleta viene ancora integrata info.

  • Instant Art (Grafica Istantanea): un esempio interessante per verificare la corretta configurazione dei moduli per la gestione delle immagini del futuro sito che si desidera sviluppare.
    Inserire del testo nel relativo campo e cliccare su OK: il risultato dovrebbe essere un'immagine riportante il testo inserito.
  • phpinfo(): permette di visualizzare la versione e la configurazione del parser PHP e ottenere informazioni su Apache2, MySQL, ecc.

Strumenti

  • phpMyAdmin: interfaccia web per gestire i database MySQL.
    A seconda delle versionidi XAMPP, possono verificarsi degli errori.
Vecchie versioni: Questo errore si verifica quando non si è proceduto con la messa in sicurezza di XAMPP.
Stato-phpmyadmin 01.png
Nuove versioni: Questo errore si verifica se al termine della procedura di installazione si è scelto di avviare immediatamente XAMPP, il database MySQL risulterà disattivato e per tale motivo all'apertura di phpMyAdmin si visualizzerà l'errore.
Phpmyadmin 01.png
L'indirizzo per accedere a phpMyAdmin è http://localhost/phpmyadmin/. Lo si può utilizzare o con l'utente “root” (con la password impostata in precedenza) o con l'utente generico “pma” (anche questo con la password impostata 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.


  • Webalizer: strumento per l'analisi e generazione di statistiche del webserver.

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

Avviare Xampp all'avvio di Linux

Se volete far partire il vostro Lampp all'avvio di linux basta usare questo comando:

# ln -s /opt/lampp/lampp /etc/init.d/lampp

Quando disinstallate Xampp, ricordatevi di cancellare anche il link simbolico appena creato




Guida scritta da: soter 12:53, Giu 23, 2005 (EDT) Swirl-auth20.png Debianized 20%
Estesa da:
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized