Raccomanda di passare a Docker

Sono finalmente passato a usare Docker per lo sviluppo locale su macOS. Mentre il seguente tutorial funziona per macOS Catalina, ha dei limiti. Raccomando di seguire il mio ultimo tutorial sull’installazione di Apache, MySQL e PHP su macOS usando Docker.

Nota: Questo post è per le nuove installazioni. Se hai installato Apache, PHP e MySQL per Mac OS Mojave, leggi il mio post su Aggiornare Apache, PHP e MySQL per macOS Catalina.

Sono a conoscenza dei software per server web disponibili per macOS, in particolare MAMP, così come i gestori di pacchetti come brew. Questi ti fanno iniziare rapidamente. Ma rinunciano all’esperienza di apprendimento e, come molti sviluppatori riferiscono, possono diventare difficili da gestire.

macOS gira sopra UNIX. La maggior parte del software UNIX si installa facilmente su macOS. Inoltre, Apache e PHP sono preinstallati con macOS. Quindi, per creare un server web locale, tutto quello che devi fare è configurare Apache e installare MySQL.

Eseguire i comandi

Prima di tutto, apri l’applicazione Terminale e passa all’utente root in modo da poter eseguire i comandi in questo post senza problemi di permessi:

sudo su -

Enable Apache on macOS

apachectl start

Verifica che funzioni! accedendo a http://localhost

Enable PHP for Apache

Prima di tutto, fai un backup della configurazione predefinita di Apache. Questa è una buona pratica e serve come confronto con le future versioni di macOS.

cd /etc/apache2/cp httpd.conf httpd.conf.Catalina

Ora modifica la configurazione di Apache. Sentitevi liberi di usare un altro editor se non avete familiarità con vi.

vi httpd.conf

Scommenta la seguente linea (rimuovi #):

LoadModule php7_module libexec/apache2/libphp7.so

Riavvia Apache:

apachectl restart

Puoi verificare che PHP sia abilitato creando una pagina phpinfo() nel tuo DocumentRoot.

Il DocumentRoot predefinito per macOS Catalina è /Library/WebServer/Documents. Puoi verificarlo dalla configurazione di Apache.

grep DocumentRoot httpd.conf

Ora crea la pagina phpinfo() nel tuo DocumentRoot:

echo '<?php phpinfo();' > /Library/WebServer/Documents/phpinfo.php

Verifica PHP accedendo a http://localhost/phpinfo.php

Installa MySQL su macOS Catalina

Scarica e installa l’ultima release DMG di MySQL generalmente disponibile per macOS. MySQL 8 è l’ultima versione. Ma sono disponibili versioni più vecchie se hai bisogno di supportare applicazioni più vecchie.

Quando l’installazione completa ti fornirà una password temporanea. Copia questa password prima di chiudere il programma di installazione. La userai di nuovo tra qualche passo.

Il README suggerisce di creare alias per mysql e mysqladmin. Tuttavia ci sono altri comandi che sono utili come mysqldump. Invece, puoi aggiornare il tuo percorso per includere /usr/local/mysql/bin.

export PATH=/usr/local/mysql/bin:$PATH

Nota: Dovrai aprire una nuova finestra del Terminale o eseguire il comando sopra per aggiornare il tuo percorso.

Infine, dovresti eseguire mysql_secure_installation. Anche se questo non è necessario, è una buona pratica per proteggere il tuo database. Questo è anche il momento in cui puoi cambiare quella brutta password temporanea in qualcosa di più gestibile per lo sviluppo locale.

Connetti PHP e MySQL

Devi assicurarti che PHP e MySQL possano comunicare tra loro. Ci sono diverse opzioni per farlo. Mi piace la seguente perché non richiede di cambiare molte configurazioni:

mkdir /var/mysqlln -s /tmp/mysql.sock /var/mysql/mysql.sock

Configurazione aggiuntiva (opzionale)

La configurazione predefinita per Apache 2.4 su macOS sembra piuttosto scarna. Per esempio, moduli comuni come mod_rewrite sono stati disabilitati. Potresti considerare di abilitarli ora per evitare di dimenticare che sono disabilitati in futuro.

Ho modificato la mia configurazione di Apache:

vi /etc/apache2/httpd.conf

Ho decommentato le seguenti linee (rimuovere #):

LoadModule deflate_module libexec/apache2/mod_deflate.soLoadModule expires_module libexec/apache2/mod_expires.soLoadModule rewrite_module libexec/apache2/mod_rewrite.so

Se sviluppi più progetti e vuoi che ognuno abbia un url unico, puoi configurare Apache VirtualHosts per macOS.

Se vuoi installare PHPMyAdmin, torna al mio post originale sull’installazione di Apache, PHP e MySQL su macOS.

Lo trovi interessante? Continuiamo la conversazione su Twitter.

Si può continuare su Twitter.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.