Tutorial: configurare PHP e MySQL su Mac

una rappresentazione dell'AMP-stack per Mac

Sviluppare per web, molto spesso significa avere confidenza con il cosiddetto AMP stack, acronimo per ApacheMySQLPHP (e  phpMyAdmin).
Si può equipaggiare la propria macchina (Apple) degli strumenti necessari per lavorare in locale, servendosi di una soluzione software all-in-one (MAMP ne è  un ottimo esempio), oppure integrando manualmente quanto manchi alla dotazione di serie.

L'installazione base di Mac OSX, infatti include già il server web Apache e il modulo PHP, quindi per iniziare a lavorare dovrete abilitarli e installare la parte software relativa al DB.

Se avete voglia di fare da voi, insomma, leggete di seguito.

Il server web Apache (Mac OS<=10.7).

Come anticipato, Apache è già incluso nella dotazione software di tante versioni di Mac OSX. Se state utilizzando versioni antecedenti alla 10.8 (Mountain Lion), vi basterà aprire il pannello delle Preferenze di Sistema, entrare nel sottomenu "condivisione" e dal suo interno mettere il segno di spunta alla voce "condivisione web";

fatto ciò, non resta che verificarne l'effettivo funzionamento digitando "localhost" (oppure 127.0.0.1) sulla barra degli indirizzi del vostro browser: l'output "It Works!"(oppure "funziona!"), vi darà conferma che il server web è in esecuzione e funziona correttamente.

Il server web Apache (Mac OS 10.8).

Una installazione di Apache è presente anche in Mountain Lion, ma rispetto alle altre versioni, non è possibile abilitarlo da interfaccia grafica.

Per di più, è necessario creare un file di configurazione. Si rende necessario dunque l'uso del terminale.

Eseguendo il comando di seguito, verrà creato ed aperto l'apposito file di configurazione vuoto nella posizione corretta all'interno del filesystem; lo visualizzerete con "nano", lo spartanissimo editor di testo che si esegue direttamente nel terminale.

sudo nano /etc/apache2/users/NOMEUTENTE.conf

Ovviamente prima di dare invio, sostituite "NOMEUTENTE" con quello in uso sul vostro computer; successivamente fate altrettanto all'interno del file con il contenuto che segue

<Directory “/Users/NOMEUTENTE/Sites/”>

Options Indexes Multiviews

AllowOverride AuthConfig Limit

Order allow,deny

Allow from all

</Directory>

Nano  non accetta le "solite" abbreviazioni da tastiera, e fornisce l'elenco completa dei pochi comandi in in calce alla schermata (N.B. il segno di

accento circonflesso indica il tasto CTRL).

N.B.: noterete che il file non verrà mostrato per intero, ma dovrete sfogliarlo una pagina per volta, servendovi dei comandi appositi.

Quando avrete finito, salvate il file (CTRL O), confermate con invio e infine uscite da nano (CTRL X).

In file appena prodotto indicherà il percorso della root ad Apache.

Il passaggio successivo consiste nel creare fisicamente quest'ultima nella posizione appena indicata.

A questo punto avviate il server con il comando

sudo apachectl start

e verificate che sia funzionante digitando sul vostro browser 127.0.0.1.

Se visualizzerete la consueta schermata "It Works!" la parte relativa  adsarà terminata e potrete andare avanti.

PHP (tutte le versioni di OSX)

Così come per Apache, anche il modulo PHP è presente all'interno del nostro Sistema.

La procedura per attivarlo consiste nell' editare il file di configurazione di Apache ed è la stessa per tutte le versioni di Mac OSX.

Avviate il Terminale (Applicazioni>Utility>Terminale) e digitate il comando

sudo nano /etc/apache2/httpd.conf

il-file-httpd-conf-in-nano

in parole povere state accedendo con i massimi privilegi al file di configurazione di Apache con un editor di testo (nano)

Il comando sudo (contrazione di superuser do) implica l'inserimento della vostra password utente: digitatela con calma -non verrà visualizzato nulla durante la digitazione- e dopo aver premuto invio vi troverete davanti al file da modificare, aperto nello spartanissimo editor "nano", grande classico dei sistemi *nix.

Servitevi del comando CTRL W per cercare la stringa

#LoadModule php5_module libexec/apache2/libphp5.so

decommentatela, ovvero cancellate il carattere "#" all'inizio della riga e salvate il file (CTRL O), vi quindi premete invio per confermare il nome e la sovrascrittura del file ed avrete finalmente abilitato il modulo PHP. Non vi resta che uscire (CTRL X).

Nonostante il tutto funzioni egregiamente anche senza, dovremo creare anche un file php.ini, ovvero il file di configurazione di php.

Si tratta di una faccenda semplice: basta duplicare il file di esempio già esistente all'interno della cartella /etc/private/, salvandolo con il nome appropriato, ovvero "php.ini", ovviamente da terminale

sudo cp /private/etc/php.ini.default /etc/php.ini

Fatto ciò, avrete il vostro file php.ini e potrete editarlo a vostro piacimento se ne avrete necessità, nelle modalità che si confanno ai files di questo tipo.

Eccoci a metà dell'opera.

MySQL

Portatevi a questo indirizzo, e dopo aver selezionato architettura e formato preferiti, scaricate il file (é richiesta una registrazione gratuita...);

una volta scaricato e decompresso, vi troverete davanti due installer: eseguiteli ed avrete praticamente finito.

Il file con estensione "prefPane" aggiungerà un pannello all'interno delle preferenze di Sistema dal quale

potrete avviare e arrestare il servizio quando necessario.

phpMyAdmin

phpMyAdmin è disponibile per il download a questo indirizzo. Decomprimete il file e copiate il suo contenuto nella root  di Apache. Dato il nome kilometrico e cosparso di numeri e punti, è preferibile rinominare la cartella con qualcosa di più comodo da digitare.

Servitevi della funzione di Finder  "vai alla cartella", disponibile dal menu "vai" sulla barra menu in alto, incollando il percorso di seguito nel campo apposito.

/Library/WebServer/Documents/

Nel caso in cui vogliate raggiungerla diversamente, ricordate che all'interno del disco sono presenti due cartelle denominate "Library", una delle quali è relativa all'utente, l'altra al Sistema Operativo: è in quest'ultima che andremo a copiare i files.

A questo punto manca veramente poco e non restano che gli ultimi dettagli.

Ultimi ma ugualmente importanti, ovvero il file di configurazione di MySQL e l'impostazione dei  permessi.

Il file di configurazione di phpMyAdmin e l'errore #2002

Per funzionare correttamente, anche phpMyAdmin necessita di un file di configurazione, altrimenti vi sarà impossibile accedere e verrà restituito l'errore #2002.
Portatevi dunque nella vostra cartella di phpMyAdmin, cercate e duplicate il file "config.sample.inc", quindi rinominatelo in "config.inc.php", e correggete al suo interno, il parametro seguente

$cfg['Servers'][$i]['host'] = 'localhost';

in

$cfg['Servers'][$i]['host'] = '127.0.0.1';

Sebbene in molti casi funzioni ugualmente, OSX lavora meglio con questo parametro. Al salvataggio, sarà finalmente possibile accedere al pannello phpMyAdmin (ricordate che è una sottocartella della root), con i dati di default (root root).

Quale operazione finale, onde evitare di incorrere in noiosi veti e imprevisti messaggi d'errore di applicazioni web  et similia, conviene intervenire sui permessi della cartella utilizzando il seguente comando nel terminale (of course...)

chmod - R 755 Library/Webserver/Documents/

Se poi non dovesse bastare, sostituite a 755 le cifre 777 e riprovate, oppure applicate la regola alla cartella che vi interessa (meglio).

Eventuali altri problemi potrebbero essere relativi al proprietario: impostate il vostro utente con

chown - R 755 Library/Webserver/Documents/

e molti degli errori saranno messi a tacere.

I problemi di proprietario e permessi potrebbero persistere e manifestarsi ugualmente, quindi nel caso in cui stiate installando WordPress, digitate il comando

chown -R :_www/percorso/alla/cartella_sito

e con il percorso della cartella plugin

chmod -R g+w /path/to/file

Finalmente funzionerá tutto come si deve.

Quello appena affrontato è un discorso articolato, ma è più lungo a dirsi che a farsi: fidatevi.

Se tutto questo dovesse avervi scossi, potrete sempre installare MAMP -bell'e pronto-: lo trovate qui.

Alla prossima.

email

Autore: GinoCQ

Web designer freelance.

Condividi su