Avere a disposizione un ambiente di staging locale è essenziale per chi sviluppa con WordPress. MAMP è una soluzione popolare, ma in alcuni casi si possono presentare dei problemi che possono impedire alla piattaforma di funzionare correttamente.

Per fortuna, gli utenti di MAMP hanno trovato soluzioni abbastanza semplici per questi problemi, che potete seguire anche voi per far funzionare di nuovo il vostro stack locale. Spesso, tutto ciò che serve sono pochi click.

In questo articolo vedremo cos’è MAMP, perché è utile e come trovare i suoi registri degli errori. Poi vi mostreremo cinque soluzioni che possono essere adottate quando MAMP non parte. Cominciamo!

Introduzione a MAMP

MAMP è una delle tante popolari piattaforme di sviluppo locale. Trasforma il vostro computer in un ambiente server che può ospitare siti web mentre ci lavorate:

La pagina iniziale di MAMP.
La pagina iniziale di MAMP.

MAMP utilizza Apache, MySQL e PHP, e questo lo rende altamente compatibile con WordPress. Potete scegliere la versione gratuita, oppure pagare per una versione proprietaria, che include programmi di installazione e altre funzionalità per aiutarvi a configurare velocemente il vostro primo sito e a migliorare il vostro flusso di lavoro.

Come tutti i siti creati in locale, il vostro sito di sviluppo o di prova su MAMP non sarà disponibile pubblicamente. Questo vi permette di costruire o testare liberamente le funzionalità, senza dovervi preoccupare che questo influenzi la User Experience (UX) frontale. Inoltre impedisce ai visitatori di inbattersi nel vostro sito incompleto.

In più, lo sviluppo locale non richiede una connessione internet, quindi potete lavorare da qualsiasi luogo. I siti locali tendono anche a caricarsi più velocemente, il che può migliorare la vostra produttività. Una volta che avrete finito di costruire o apportare modifiche al vostro sito, potrete migrare su un server live.

Abbiamo spiegato come installare MAMP in un post precedente. A questo punto, daremo per scontato che l’abbiate già utilizzato ma che siate incappati in un problema.

Come Controllare i Log degli Errori di MAMP

Trovare i log degli errori di MAMP è abbastanza semplice. Basta navigare nella cartella dove è salvata la vostra installazione e aprire la cartella logs. Dovreste vedere i file dei log degli errori di Apache, MySQL e PHP:

I file di log degli errori di MAMP
I file di log degli errori di MAMP

Se MAMP non parte, questo dovrebbe essere il vostro primo passo. Controllate i log per vedere se ci sono messaggi relativi al problema e se forniscono indicazione specifiche per risolverlo. Questa operazione è molto più veloce della risoluzione dei problemi per tentativi ed errori.

Cosa Fare se MAMP non Parte (5 Soluzioni)

Alcuni problemi comuni in cui incorrono gli utenti di MAMP sono relativi al mancato avvio di Apache e MySQL. Entrambi i problemi impediscono alla piattaforma di funzionare, il che rende impossibile l’accesso al vostro sito locale. Qui ci sono alcune soluzioni che dovrebbero aiutarvi ad aggirare entrambi gli ostacoli, così da tornare a lavorare.

1. Ripristinare la Cartella Document Root

La Document root della vostra installazione MAMP è il posto in cui sono memorizzati i file HTML, PHP e immagine del vostro host virtuale. Supponiamo che abbiate intenzionalmente o accidentalmente cambiato o cancellato la vostra cartella document root. In questo caso, quando provate a lanciare il vostro server, potreste vedere un messaggio di errore del tipo “Apache non può essere avviato. Per favore controlla l’installazione e la configurazione di MAMP”:

Apache non può essere avviato. Per favore controlla la vostra installazione e configurazione di MAMP.
Apache non può essere avviato. Per favore controlla la tua installazione e configurazione di MAMP.

Per risolvere questo problema, avete semplicemente bisogno di ripristinare la vostra cartella document root o dire a MAMP dove l’avete spostata. Questa operazione varia a seconda che della macchina Mac o Windows, in quanto i percorsi dei file potrebbero essere leggermente diversi. Comunque, dovreste essere in grado di seguire i passaggi qui sotto su entrambi i sistemi operativi.

Di default, la document root di MAMP si trova in Applications/MAMP/htdocs su macOS e C:MAMP/htdocs su Windows. Se sapete dove si trova la vostra nuova cartella document root, potete aprire il vostro file di configurazione di MAMP navigando in Applicazioni (o C:) > MAMP > conf > apache > httpd.conf, e poi sostituendo il percorso predefinito con quello nuovo.

Una volta aperto httpd.conf, cercate le occorrenze di “DocumentRoot” e sostituite il percorso predefinito in tutte. Salvate il file, poi fermate e riavviate MAMP.

In alternativa, potete selezionare la nuova document root tramite il pannello di controllo di MAMP. Aprite la finestra Preferenze e selezionate la scheda Web Server:

Le preferenze del server web MAMP.
Le preferenze del server web MAMP.

Assicuratevi che Apache sia selezionato. Poi cliccate sul pulsante Select accanto a Document Root. Questo aprirà una finestra del Finder dove potrete scegliere la cartella che volete utilizzare come document root.

Una volta scelta la cartella corretta, fate clic su Select, poi selezionate OK nella finestra Preferences di MAMP:

Confermare la root del documento di MAMP nella finestra Web Server Preferences.
Confermare la root del documento di MAMP nella finestra Web Server Preferences.

Questo resetterà la vostra root dei documenti e riavvierà automaticamente MAMP. A questo punto Apache dovrebbe partire.

2. Cambiare la Porta d’Ascolto

Di default, MAMP esegue Apache sulla porta 8888. Se questa porta è utilizzata da un’altra applicazione, Apache non sarà in grado di partire.

Per risolvere questo problema, potete chiudere l’applicazione che impedisce ad Apache di connettersi alla porta 8888, o cambiare la porta di ascolto nel vostro file di configurazione di MAMP.

Se volete scoprire quale app sta bloccando la porta, potete utilizzare la linea di comando. Il comando che dovete inserire varia a seconda del vostro sistema operativo:

  • macOS: sudo lsof -nP -iTCP:$PORT | grep LISTEN
  • Windows: netstat -ab | altro

Questi comandi dovrebbero restituire un elenco di Process Identifiers (PIDs) con le porte su cui sono in esecuzione. Potete terminare il processo in esecuzione sulla porta di cui avete bisogno per avviare MAMP utilizzando uno dei seguenti comandi:

  • macOS: sudo kill -9 <PID>
  • Windows: taskkill /F /PID pid_number

Quando eseguite i comandi qui sopra, assicuratevi di sostituire i segnaposto come $PORT, <PID> e pid_number con i valori appropriati.

Se volete cambiare la porta di ascolto nel vostro file di configurazione di MAMP, potete farlo aprendo il vostro file httpd.conf e cambiando tutte le ripetizioni di “port 8888” con “port 8000” (o un’altra alternativa). Salvate il file e riavviate Apache.

Potete anche cambiare la porta di Apache in Preferenze > Porte:

Preferenze nelle Porte di MAMP.
Preferenze nelle Porte di MAMP.

Cliccate su OK per salvare le modifiche.

3. Kill di tutti i Processi MySQL e Riavviare MAMP

Se i vostri problemi con MAMP sono dovuti a MySQL invece che ad Apache, ci sono alcune soluzioni da provare. Il problema è solitamente dovuto ad un altro servizio MySQL in esecuzione sulla stessa porta.

La soluzione più semplice è interrompere tutti i processi MySQL e riavviare MAMP. Su macOS potete farlo utilizzando il Monitor delle Attività che trovate nella cartella Utilities del vostro computer.

Cercate “mysqld”, selezionate tutti i processi in esecuzione e poi chiudeteli cliccando sul pulsante X nell’angolo in alto a sinistra della finestra:

Interromere i processi attivi di MySQL tramite il Monitoraggio delle attività.
Interromere i processi attivi di MySQL tramite il Monitoraggio delle attività.

Gli utenti di Windows dovranno aprire il Resource Monitor dal menu Start:

L'applicazione Windows Resource Monitor.
L’applicazione Windows Resource Monitor.

Cercate il file mysqld.exe, fate clic col destro e selezionate End Process. Una volta che avrete chiuso tutti i processi MySQL sul vostro computer, fermate e riavviate MAMP.

4. Cancellare i Log di MySQL

Se la kill di tutti i processi MySQL attivi sul vostro computer non permette a MySQL di partire, potete provare a cancellare i file di log MySQL. Questi sono memorizzati nella vostra directory MAMP db/mysql57:

I file di log MySQL di MAMP.
I file di log MySQL di MAMP.

Dovrebbero chiamarsi ib_logfile0, ib_logfile1, ecc. Fate il backup dei file di log, poi cancellateli e riavviate MAMP. I file di log si rigenerano automaticamente quando saranno di nuovo necessari.

5. Cancellare il File mysql.sock.lock

MAMP deve scrivere i Process Identifiers (PIDs) dei processi attivi in un file mysql.sock.lock. Se questo task fallisce, una volta che il processo è terminato il file viene lasciato indietro invece di essere cancellato.

Questo impedirà a MySQL di avviarsi, perché tratta un file mysql.sock.lock vuoto come se contenesse un PID in esecuzione. Per risolvere questo problema, dovrete cancellare il file manualmente.

Navigate nei vostri file MAMP (Applications/MAMP su Mac o C:MAMP su Windows) e cercate la cartella tmp. Poi selezionate la cartella mysql, cercate il file mysql.sock.lock e cancellatelo. Come avviene per i file di log, verrà creato automaticamente un nuovo file mysql.sock.lock quando sarà necessario.

Riepilogo

MAMP è una delle soluzioni di sviluppo locale per molti professionisti e appassionati di WordPress (nota: non è l’unica). Ma possono sempre sorgere dei problemi che impediscono l’avvio del vostro server, e alla fine ritardano il vostro flusso di lavoro.

In questo articolo, abbiamo illustrato cinque possibili soluzioni da provare nel caso in cui Apache o MySQL non si avviano:

  1. Ripristinare la document root.
  2. Cambiare la porta di ascolto.
  3. Interrompere tutti i processi MySQL e riavviare MAMP.
  4. Cancellare i log di MySQL.
  5. Cancellare il file mysql.sock.lock.