HomeXAMPPNewsTeamProjectsDocsExtrasLinksContact

FAQ di XAMPP per Linux

Autore: Kai 'Oswald' Seidler
Versione: Tue 19 May 2009 01:31:54 AM CEST

1. Installare e aggiornare XAMPP

Come aggiornare XAMPP?
Si è verificato un errore durante l'aggiornamento! E ora?

2. Avviare XAMPP

Qual'è il significato di questi messagi mentre si avvia XAMPP?
Ho ricevuto l'errore "/lib/libc.so.6: version `GLIBC_2.2' not found". E ora?
Qual'è il segreto dell'"Errore 1"?
Apache sembra non avviarsi. Cosa posso fare?
Che faccio se il messaggio di errore è "Invalid argument: Could not set permissions on ssl_mutex"?
Che faccio se il messaggio di errore è "Invalid argument: Unable to create scoreboard"?
Che faccio se il messaggio di errore è »Invalid argument: Configuration failed«?
Cosa faccio se il messaggio di errore è »The configuration file now needs a secret passphrase (blowfish_secret)« mostrare?
Che faccio se il messaggio di errore è »cannot restore segment prot after reloc: Permission denied«?

3. Eseguire XAMPP

Dopo che ho riavviato la mia Linux box XAMPP smette di avviarsi! Come posso risolvere questo?
Come posso rendere più sicura la mia installazione di XAMPP?
Come attivo eAccelerator?
Come attivo l'estensione OCI8/Oracle per PHP?
XAMPP gira, ma non viene mostrata nessun'immagine?
Come eseguo il backup/ripristino del mio sistema XAMPP?

4. Fermare XAMPP

5. Disinstallare XAMPP

6. Il futuro di XAMPP

E il supporto JSP in XAMPP?
Cosa ci porta il futuro?

1. Installare e aggiornare XAMPP

* Come aggiornare XAMPP?

Se esiste un aggiornamento, dovresti usarlo: a) è molto più piccolo del pacchetto completo di XAMPP e b) la tua configurazione e i file HTML non saranno sovrascritti.

Passo 1: download

Okay, il primo passo è ovvio: scarica il pacchetto di aggiornamento dalla sezione XAMPP del nostro sito. Per favore tieni conto che solo i pacchetti corrispondenti possono aggiornare la tua versione di XAMPP.

Se hai scaricato una versione sbagliata otterrai un messaggio di errore se provi l'upgrade.

Passo 2: estrai l'archivio

Ora estrai il package scaricato:
tar xvfz xampp-linux-upgrade-x.x.x-y.y.y.tar.gz
A proposito: Non importa in quale parte del file system lo estrai. Assicurati solo che sia nella stessa macchina dove è installato XAMPP.

Passo 3: inizia l'aggiornamento

Dopo aver spacchettato l'archivio puoi iniziare il processo di aggiornamento. Prima, ottieni accesso root al sistema, ad esempio tramite uso del comando 'su':
su
E ora fai partire l'aggiornamento:
xampp-upgrade/start
Adesso nel tuo schermo dovresti vedere qualcosa come :

Stopping XAMPP for Linux 0.9.6...
XAMPP: Stopping Apache...
XAMPP: Stopping MySQL...
XAMPP for Linux stopped.

Upgrading 0.9.6 to 0.9.7...
Installing new files...
Upgrading existing files...
patching file lampp/etc/httpd.conf

Successfully upgraded XAMPP.

XAMPP: Starting Apache...
XAMPP: Starting MySQL...
XAMPP started.


(N.d.T:
Sto fermando XAMPP per Linux 0.9.6...
XAMPP: Sto fermando Apache...
XAMPP: Sto fermando MySQL...
XAMPP per Linux fermato.

Aggiornamento da 0.9.6 a 0.9.7...
Sto installando i nuovi file...
Sto aggiornando i file esistenti...
patching del file lampp/etc/httpd.conf

XAMPP è aggiornato con successo.

XAMPP: Sto avviando Apache...
XAMPP: Sto avviando MySQL...
XAMPP avviato.
)

Pronto. Ha aggiornato XAMPP con successo.

Tra l'altro: il programma di aggiornamento fermerà XAMPP se in esecuzione e lo riavvierà non appena l'upgrade è terminato. XAMPP sarà avviato dopo un upgrade persino se non era in esecuzione.

Passo 4: Testing

Ora usa il tuo web browser preferito e testa la nuova versione di XAMPP accedendo al tuo sito web. Per esempio digita semplicemente http://localhost nella barra degli indirizzi del tuo browser.

Dopo l'aggiornamento puoi cancellare la cartella lampp-upgrade, non è più necessaria.

* Si è verificato un errore durante l'aggiornamento! E ora?

In particolari circostanze puoi avere il seguente messaggio di warning:

The file /opt/lampp/XXX couldn't be upgraded. The new version of the file could be found under: /opt/lampp/XXX-0.9.7

(N.d.T: Il file /opt/lampp/XXX non può essere aggiornato.
La nuova versione del file può essere trovata in: /opt/lampp/XXX-0.9.7)

Il programma ha cercato di aggiornare uno dei tuoi file di configurazione. Per farlo, il programma doveva editare alcune righe che avevi già modificato. Considerando che nessuno vuole perdere preziose informazioni di configurazione, il programma di aggiornamento ha deciso di non modificare il file ma di salvare una copia oltre a quella originale.

2. Avviare XAMPP

* Qual'è il significato di questi messagi mentre si avvia XAMPP?

Puoi ricevere tre errori mentre avvii XAMPP:

LAMPP-Apache is already running
(N.d.T.: LAMPP-Apache è già in esecuzione).
An Apache daemon is already running
(N.d.t: Un demone Apache è già avviato).

Lo script LAMPP di startup non ha avviato XAMPP-Apache perché c'è già un'altra instanza di Apache in esecuzione. Per avviare XAMPP correttamente, devi prima fermare questo demone.

LAMPP-MySQL is already running
(N.d.T: LAMPP-MySQL è gia in esecuzione).
A MySQL daemon is already running
(N.d.T: Un demone MySQL è già in esecuzione).

Per lo più per le stesse ragioni dell'errore di cui sopra. Lo script LAMPP di startup ha trovato un demone MySQL già in esecuzione nel tuo sistema. Per avviare correttamente LAMPP, devi prima fermare questo processo.

* Ho ricevuto l'errore "/lib/libc.so.6: version `GLIBC_2.2' not found". E ora?

/opt/lampp/bin/XXX: /lib/libc.so.6: version `GLIBC_2.2' not found (required by XXX)
(N.d.T: /lib/libc.so.6: versione `GLIBC_2.2' non trovata [richiesta da XXX]).

Il tuo sistema è troppo vecchio. XAMPP ha bisogno di una distribuzione Linux che usi la versione 2.1 di glibc.

* Qual'è il segreto dell'"Errore 1"?

Bella domanda :) Questo errore può esistere per diverse ragioni. Apache tira fuori quest'errorre in diverse circostanze. Per trovare l'esatta ragione dobbiamo investigare un po':
tail -2 /opt/lampp/logs/error_log
Se ora vedi "Invalid argument: Could not set permissions on ssl_mutex"
(N.d.T.: "Argomento non valido: Non posso impostare i permessi su ssl_mutex") o
"Invalid argument: Unable to create scoreboard" (N.d.T.: "Argomento non valido: Non riesco a creare lo scoreboard") dai un'occhiata alle risposte di sotto. Se vedi un altro messaggio di errore per favore mandami un e-mail. Forse possiamo risolvere il problema assieme. Il mio indirizzo è oswald@apachefriends.org.

* Apache sembra non avviarsi. Cosa posso fare?

Bella domanda :) Questo errore può esistere per diverse ragioni. Apache 'sputa' fuori quest'errorre in diverse circostanze. Per trovare l'esatta ragione dobbiamo perlustrare un po':
tail -2 /opt/lampp/logs/error_log
Se ora vedi "Invalid argument: Could not set permissions on ssl_mutex" (N.d.T.: "Argomento non valido: Non posso impostare i permessi su ssl_mutex") o "Invalid argument: Unable to create scoreboard" (N.d.T.: "Argomento non valido: Non riesco a creare lo scoreboard") dai un'occhiata alle risposte di sotto. Se vedi un altro messaggio di errore per favore mandami un e-mail. Forse possiamo risolvere il problema assieme. Il mio indirizzo è oswald@apachefriends.org.

* Che faccio se il messaggio di errore è "Invalid argument: Could not set permissions on ssl_mutex"?

Il messaggio di errore è per intero:

[error] (22)Invalid argument: Could not set permissions on ssl_mutex; check User and Group directives
(N.d.T.: [errore] (22)Argomento non valido: non posso impostare i permessi su ssl_mutex; controlla utente e le direttive di gruppo).

In questo caso devi modificare le direttive del gruppo (più o meno riga 318) in /opt/lampp/etc/httpd.conf.

Là dovresti trovare qualcosa come:

Group ...

Cambia "..." a "nobody", "nogroup" o #-1. Una di queste tre dovrebbe funzionare.

* Che faccio se il messaggio di errore è "Invalid argument: Unable to create scoreboard"?

Il messaggio di errore per intero è:

[crit] (22)Invalid argument: Unable to create scoreboard (anonymous shared memory failure)
(N.d.T.: [crit] (22)Argomento non valido: Non riesco a creare lo scoreboard
(errore nella memoria condivisa)).

In questo caso devi rimuovere l'hash (cancelletto) (#) di fronte alle direttive Scoreboard (atorno alla riga 71) in /opt/lampp/etc/httpd.conf.

Là dovresti trovare qualcosa come:

#ScoreBoardFile logs/apache_runtime_status

Semplicemente rimuovi il cancelletto all'inizio di questa riga:

ScoreBoardFile logs/apache_runtime_status

Ora questo errore non dovrebbe più darti fastidio.

* Che faccio se il messaggio di errore è »Invalid argument: Configuration failed«?

(N.d.T.: »Argomento non valido: errore nella configurazione).

In questo caso, Apache non riesce ad ottenere l'indirizzo IP del tuo host name. Di norma dovrebbe funzionare ma qualchevolta (per lo più se usi DHCP) potrebbe verificarsi questa situazione.

Soluzione:

Semplicemente invoca il seguente comando (per favore fai copia&incolla. I caratteri ` sono obbligatori):

echo 127.0.0.1 `hostname` >> /etc/hosts

Questo risolverà l'errore di configurazione del tuo sistema e l'errore »Configuration failed« dovrebbe sparire.

* Cosa faccio se il messaggio di errore è »The configuration file now needs a secret passphrase (blowfish_secret)« mostrare?

(N.d.T.: »Il file di configurazione ha ora bisogno di una password segreta [blowfish_secret]« ).

Questo messaggio può comparire fin dal rilascio di XAMPP 1.2 per Linux. Dalla versione 2.5.2 phpMyAdmin supporta la crittografia di password salvate nei cookie.

Soluzione:

Edita config.inc.php alla riga 60. Trovi questo file nel folder di phpmyadmin di XAMPP. La riga dovrebbe apparire così:

$cfg['blowfish_secret'] = '';

Inserisci in questa riga una password sotto forma di parola o frase, ad esempio:

$cfg['blowfish_secret'] = 'holla';

Questo è tutto. Dovresti ora essere in grado di usare phpMyAdmin allo stesso modo di prima.

* Che faccio se il messaggio di errore è »cannot restore segment prot after reloc: Permission denied«?

(N.d.T.: »non posso ripristinare il segmento prot dopo reloc: permesso negato«). Stai usando Fedora? Dalla versione 4 - Penso - SELinux è attivato per default e impedisce a XAMPP di avviarsi con successo.

Soluzione:

Per il momento conosco solo una soluzione - disattivare SELinux:

setenforce 0

Ora XAMPP funziona bene di nuovo. Se conosci una soluzione migliore, per favore scrivimi un'email. Non sono un esperto di SELinux e quello che so è solo come disabilitarlo. ;)

3. Eseguire XAMPP

* Dopo che ho riavviato la mia Linux box XAMPP smette di avviarsi! Come posso risolvere questo?

Giuesto. Questo è il normale comportamento di Linux (Che si applica a ogni altro sistema Unix-like). E' compito dell'amministratore assicurarsi che una specifica applicazione si avvi al boot.

Non c'è una vera modalità standard per configurare il processo di boot di un sistema Linux, ma la maggior parte di essi dovrebbero consentirti di far partire XAMPP durante il boot con i seguenti passi.

  1. Primo, scopri il tuo runlevel di default.
    Semplicemente digita egrep :initdefault: /etc/inittab.
    Dovresti ora vedere una riga contenente un numero tra due doppi punti.
    Nella maggior parte dei casi 3 o 5 (2 se usi Debian).

  2. Vai alla directory che configura questo runlevel. Se per esempio il tuo runlevel è 3, allora devi fare delle modifiche nella cartella /etc/rc.d/rc3.d.

    Se il tuo sistema non ha /etc/rc.d/rc3.d per favore prova allora /etc/init.d/rc3.d e /etc/rc3.d.

  3. Ora porta a termine la tua attuale configurazione digitando:

    ln -s /opt/lampp/lampp S99lampp
    ln -s /opt/lampp/lampp K01lampp

Adesso XAMPP dovrebbe avviarsi e fermarsi automaticamente se avvii o spegni la tua macchina.
OpenSuSE 10.0 è un po' strano: hai bisogno d'impostare un link simbolico da /etc/init.d/lampp a /opt/lampp/lampp:

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

E poi di usare il runlevel editor (expert mode) da YaST, per attivare XAMPP per lo specifico runlevel.

* Come posso rendere più sicura la mia installazione di XAMPP?

Nell'installazione di default, XAMPP non ha password impostate e non si consiglia di avviare XAMPP con questa configurazione accessibile dagli altri (es. da Internet).

Semplicemente digita il comando seguente (come root) per far partire un semplice test di sicurezza:

/opt/lampp/lampp security

Ora dovresti vedere il seguente dialogo nel tuo schermo (è evidenziato l'input dell'utente):

LAMPP: Quick security check...
LAMPP: Your LAMPP pages are NOT secured by a password.
LAMPP: Do you want to set a password? [yes] yes (1)
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Password protection active. Please use 'lampp' as user name!
LAMPP: MySQL is accessable via network.
LAMPP: Normaly that's not recommended. Do you want me to turn it off? [yes] yes
LAMPP: Turned off.
LAMPP: Stopping MySQL...
LAMPP: Starting MySQL...
LAMPP: The MySQL/phpMyAdmin user pma has no password set!!!
LAMPP: Do you want to set a password? [yes] yes
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Setting new MySQL pma password.
LAMPP: Setting phpMyAdmin's pma password to the new one.
LAMPP: MySQL has no root passwort set!!!
LAMPP: Do you want to set a password? [yes] yes
LAMPP: Write the password somewhere down to make sure you won't forget it!!!
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Setting new MySQL root password.
LAMPP: Setting phpMyAdmin's root password to the new one.
LAMPP: The FTP password is still set to 'lampp'.
LAMPP: Do you want to change the password? [yes] yes
LAMPP: Password: ******
LAMPP: Password (again): ******
LAMPP: Reload ProFTPD...
LAMPP: Done.

(N.d.T.:
LAMPP: Rapido controllo di sicurezza...
LAMPP: Le tue pagine LAMPP non sono protette da password.
LAMPP: Vuoi impostare una password? [si] si (1)
LAMPP: Password: ******
LAMPP: Password (di nuovo): ******
LAMPP: Protezione password attiva. Prego usa 'lampp' come nome utente!
LAMPP: MySQL è accessibile dalla rete.
LAMPP: Di norma questo non è consigliato. Vuoi che lo disattivi? [si] si
LAMPP: Disattivato.
LAMPP: Sto fermando MySQL...
LAMPP: Sto avviando MySQL...
LAMPP: L'utente MySQL/phpMyAdmin pma non ha una password impostata!!!
LAMPP: Vuoi impostare una password? [si] si
LAMPP: Password: ******
LAMPP: Password (ancora): ******
LAMPP: Imposto la nuova password MySQL pma.
LAMPP: Cambio la password phpMyAdmin pma in quella nuova.
LAMPP: MySQL non ha password di root settata!!!
LAMPP: Vuoi impostarla? [si] si
LAMPP: Scrivi la password da qualche parte per essere siciuro di non perderla!!!
LAMPP: Password: ******
LAMPP: Password (ancora): ******
LAMPP: Imposto la nuova passowrd di root MySQL.
LAMPP: Cambio la password di root phpMyAdmin in quella nuova.
LAMPP: La password FTP è ancora impostata a 'lampp'.
LAMPP: Vuoi cambiare la password? [si] si
LAMPP: Password: ******
LAMPP: Password (ancora): ******
LAMPP: Ricarico ProFTPD...
LAMPP: Fatto.
)

(1) Impostare una password proteggerà le pagine demo (http://localhost/xampp/) di XAMPP. Il nome utente è 'lampp'!

Dopo aver chiamato questo comando la tua installazione sarà "sicura". Per quanto mi riguarda non ho idea di cos'altro potrebbe essere insicuro.

* Come attivo eAccelerator?

(A partire da XAMPP 1.4.12 per Linux )

Per attivare eAccelerator semplicemente trova le seguenti righe in /opt/lampp/etc/php.ini:

;extension="eaccelerator.so"
;eaccelerator.shm_size="16"
;eaccelerator.cache_dir="/opt/lampp/tmp/eaccelerator"
;eaccelerator.enable="1"
;eaccelerator.optimizer="1"
;eaccelerator.check_mtime="1"
;eaccelerator.debug="0"
;eaccelerator.filter=""
;eaccelerator.shm_max="0"
;eaccelerator.shm_ttl="0"
;eaccelerator.shm_prune_period="0"
;eaccelerator.shm_only="0"
;eaccelerator.compress="1"
;eaccelerator.compress_level="9"

Togli il punto e virgola all'inizio di ogni riga e riavvia XAMPP. eAccelerator è ora attivo. Per maggiori informazioni su eAccelerator, controlla la relativa home page: http://eaccelerator.net.

* Come attivo l'estensione OCI8/Oracle per PHP?

(A partire da XAMPP 1.3 per Linux )

Per attivare l'estensione PHP OCI8/Oracle esegui per favore il comando seguente:

/opt/lampp/lampp oci8
Apparirà questo dialogo:

Please enter the path to your Oracle installation:
ORA_HOME [/opt/oracle/OraHome1]
installing symlinks...
patching php.ini...
OCI8 add-on activation likely successful.
LAMPP: Stopping Apache with SSL...
LAMPP: Starting Apache with SSL...

(N.d.T.:
per favore inserisci il percorso della tua installazione Oracle.
Sto installando i symlink
Sto patchando php.ini...
L'attivazione dell'add-on OCI8 è avvenuta con successo.
Sto fermando Apache con SSL...
Sto avviando Apache con SSL...
)
Ora l'estensione dovrebbe essere attiva. Avevo solo poche chance per testare questa feature, quindi, per favore, riporta se funziona o no a: oswald@apachefriends.org. XAMPP al momento supporta solo Oracle 10 pronto all'uso, se usi Oracle 11 potresti aver bisogno di metterci le mani; inoltre XAMPP è un’ applicazione a 32 bit solo che funziona unicamente con un client Oracle a 32 bit. Entrambe le limitazioni hanno effetto solo sulla versione client su cui XAMPP è collegato. Dal lato server puoi usare la versione Oracle che preferisci .

* XAMPP gira, ma non viene mostrata nessun'immagine?

Questo è un problema particolare in alcuni sistemi Linux. Per favore apri /opt/lampp/etc/httpd.conf e cerca queste due righe:
#EnableMMAP off
#EnableSendfile off
Togli # in entrambe le righe e riavvia Apache. Ora vedrai di nuovo le tue immagini.

* Come eseguo il backup/ripristino del mio sistema XAMPP?

Dalla versione 1.4.2 di XAMPP per Linux puoi facilmente eseguire il backup dei tuoi dati.

Passo 1: Eseguire il backup

Esegui il backup chiamando:

/opt/lampp/lampp backup
o
/opt/lampp/lampp backup secret

Dove secret è la tua password di root MySQL.

Questo comando emetterà il seguente output:

# /opt/lampp/lampp backup
Backing up databases...
Backing up configuration, log and htdocs files...
Calculating checksums...
Building final backup file...
Backup finished.
Stai attento a /opt/lampp/backup/xampp-backup-22-01-04.sh
#


((N.d.T.:
Sto facendo il backup dei database
Sto facendo il backup della configurazione, dei log e del file htdocs
Sto calcolando i checksum...
Sto costruendo il file di backup finale

Passo 2: Fai attenzione ai tuoi dati di backup

Backup finito.
) Il file /opt/lampp/backup/xampp-backup-22-01-04.sh (nell'esempio di sopra) contiene i tuoi dati di backup. Conservalo in un luogo sicuro.

Passo 3: Ripristino dei tuoi dati di backup

In una nuova macchina hai bisogno della stessa versione di XAMPP di quella originale/sorgente.

Chiama (da root):

sh xampp-backup-22-01-04.sh

Dovresti vedere qualcosa come:

# sh xampp-backup-22-01-04.sh
Checking integrity of files...
Restoring configuration, log and htdocs files...
Checking versions...
sto controllando le versioni...)
Installed: XAMPP 1.4.2
installato: XAMPP 1.4.2)
Backup from: XAMPP 1.4.2
Backup da XAMPP 1.4.2)
Restoring MySQL databases...
Restoring MySQL user databases...
Backup complete. Have fun!
You may need to restart XAMPP to complete the restore.
#

(N.d.T.:
Sto controllando l'integrità dei file...
sto ripristinando la configurazione, i log e il file htdocs...
Sto ripristinando i database MySQL
Sto ripristinando i database utente di MySQL
Backup completo. Divertiti!
Potrebbe essere necessario riavviare XAMPP per completare il ripristino.
)
Questo è tutto. Come puoi leggere potresti aver bisogno di far ripartire XAMPP.

Dovrebbe funzionare perfettamente (L'ho testato molte volte) ma ricorda: è una feature in fase beta.

Attenzione: la funzionalità di backup e restore è ancora in fase di sviluppo e potrebbe non funzionare correttamente.

Attenzione: C'è un piccolo ma fastidioso bug nella version 1.4.2 di XAMPP. Prego dai un'occhiata qui!

4. Fermare XAMPP

5. Disinstallare XAMPP

6. Il futuro di XAMPP

* E il supporto JSP in XAMPP?

No, almeno nella migliore delle ipotesi no. XAMPP crescerebbe da circa 42 MB a oltre 60 MB (38 MB per Java 2 SDK e 4 MB per Tomcat). Al momento sono convinto, che non ne vale la pena.

* Cosa ci porta il futuro?

In una delle prossime release includerò una prima versione del mio tool di amministrazione Apache chiamato Apanatschi. Al momento lo sto ancora sviluppando quindi non è ancora nota l'esatta data di uscita. Il primo passo sarebbe quello di rendere possibile una configurazione di base (come gli host virtuali) con Apanatschi e nelle successive release seguirà il supporto a BIND e a Postfix.