Utilizzo condiviso Xampp (lamp) su Windows e Linux

XAMPP: X(cross-platform)A(apache)M(mysql)P(php)P(perl)

Quando ho iniziato la mia personale migrazione verso Linux, una delle necessità che ho avuto è stata quella di poter lavorare con i miei siti web sia su Windows (sul quale avevo installato appunto Xampp) che su Linux (appena installato su una nuova partizione del disco), in modo da non dover riavviare ogni volta il pc ed in modo anche da poter testare e configurare correttamente l’ambiente su Linux in vista dell’abbandono totale di Windows.

Com’è intuibile non basta installare Xampp anche su Linux per risolvere il problema dato che le due installazioni, pur condividendo lo stesso disco fisico, utilizzano directory e file di configurazione diversi, ma l’installazione è comunque necessaria! Se devi ancora scaricare Xampp per Linux puoi farlo da qui (scarica la stessa versione che hai già installato su Windows).

N.B. Se hai impostato una password per MySQL su Windows è necessario che tu imposti la stessa password anche quando installi Xampp sul tuo Linux!

Ok, supponiamo adesso quindi che sul tuo pc la situazione sia questa:

Partizione X:
Windows con installato Xampp 5.x.x funzionante e tutti i tuoi siti e db MySQL
Partizione Y:
Linux con installato Xampp 5.x.x pulito e funzionante

Entrando sul tuo sistema Linux avrai notato che esso, fin dal primo avvio, ha riconosciuto e montato automaticamente le partizioni Windows alle quali tu hai quindi pieno accesso. Se così non fosse, prima di continuare, hai bisogno di montare tali partizioni. Per Ubuntu e derivate puoi seguire questa guida, se hai un’altra distribuzione Linux puoi cercare su Google una guida adatta al tuo sistema, non avrai difficoltà a trovarne.

Bene, adesso entra nel tuo sistema Linux, tutte le operazioni che andremo a fare d’ora in poi saranno fatte da qui!

FASE 1: cambiare la “Document Root” su Apache, per farlo apri da terminale il file di configurazione di Apache con il tuo editor di testo preferito, nel mio caso:

sudo mousepad /opt/lampp/etc/httpd.conf

Cerca le seguenti righe e modificale come indicato:

DocumentRoot “/opt/lampp/htdocs” diventa DocumentRoot “/mnt/30CA7176CA7138E4/xampp/htdocs”

e poche righe più sotto…

<Directory “/opt/lampp/htdocs”> diventa <Directory “/mnt/30CA7176CA7138E4/xampp/htdocs”>

Attenzione! “/mnt/30CA7176CA7138E4/” altro non è che il punto di mount che Ubuntu ha assegnato automaticamente alla mia partizione C: di Windows, per individuare il tuo punto di mount puoi provare cliccando con il tasto destro del mouse sull’icona relativa a quella partizione sul tuo desktop, oppure puoi utilizzare gparted o ancora puoi provare a cercare manualmente il mount navigando con il tuo esplora risorse preferito.

FASE 2: Creare collegamenti simbolici per i database MySQL. Esegui da terminale quanto segue prestando sempre attenzione a modificare correttamente il mount della partizione Windows:

sudo ln -s /mnt/30CA7176CA7138E4/xampp/mysql/data/* /opt/lampp/var/mysql/

FASE 3: Replicare la configurazione del file php.ini di Windows in Linux. Naturalmente non è possibile copiare pari pari il php.ini di Windows su quello di Linux ma è possibile modificare il php.ini in Linux per configurarlo come quello di Windows. Se ricordi quali sono le impostazioni che vuoi cambiare ti baserà editare il file eseguendo da terminale:

sudo mousepad /opt/lampp/etc/php.ini

Se invece non ricordi le modifiche che hai fatto su Windows puoi usare diffuse per visualizzare e confrontare i due file php.ini ed accomodarli come preferisci:

sudo apt-get install diffuse
sudo diffuse /mnt/30CA7176CA7138E4/xampp/php/php.ini /opt/lampp/etc/php.ini

Naturalmente non dovrai rendere identici i due file, ma solo analizzare e modificare le impostazioni necessarie tipo max_execution_time, error_reporting, upload_max_filesize etc…

In linea teorica questa guida è valida non solo per Xampp ma, con i dovuti accorgimenti, per qualsiasi piattaforma tu abbia installato. Infondo cambiano le directory ma il principio di funzionamento resta invariato…

That’s all folks!

Pubblicato da Simone Tromboni

Appassionato di informatica e tecnologia fin dall'infanzia, mi occupo di consulenza, assistenza, programmazione, web e di tutto quello che comunque riguarda il mondo dell'information tecnology. In questo blog, quando possibile, cercherò di riportare alcuni miei appunti inerenti soprattutto al mondo di Linux e del software Open Source.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

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