Un server web completo su Mac Os X

Oggi post “tecnico”. D’altronde, dopo una serie di articoli di satira e politica e dopo un bel po’ di giorni di assenza, meglio rientrare nei ranghi con qualcosa di inutile per il 90% dei miei lettori.

Ispirato da questo articolo, spero di riuscire a spiegare al mondo come configurare e installare un server web su Mac Os X, completo di php, mysql, pear, librerie gd e quant’altro.

Innanzi tutto bisogna dire che casa Apple rende la vita piuttosto facile a chi ha voglia di usare php a “sbattimento zero”: il server web Apache2 e php 5 sono già installati di serie nel sistema operativo.

Attivazione di Apache

Attivare il server web è piuttosto semplice. Clic sulla mela in alto a sinistra, “Preferenze di sistema…”, “Condivisione”, attivare il flag in “Condivisione web”. Per testarne il funzionamento si può aprire un qualunque browser web e digitare “localhost” nell’indirizzo. Se compare una finestra di benvenuto di Apache significa che tutto è andato a buon fine.

Per utilizzare php abbiamo due opzioni: attivare la versione già compresa in Mac Os X (rinunciando però alle librerie GD per la gestione delle immagini) oppure installarlo ex novo con l’aiuto dell’installer di Marc Liyanage.

Attivazione di php built-in con Mac Os X

Anche se installato, purtroppo php non è automaticamente attivato, ma necessita di una piccola modifica ai file di configurazione di Apache. Aprire un terminale (Applicazioni – Utility – Terminale) e digitare

sudo nano /etc/apache2/httpd.conf

Dopo aver inserito la password del vostro utente, comparirà un’editor testuale utilizzabile come un blocco note. Premere Ctrl+W per cercare del testo, digitare “php” seguito dal tasto Invio. Il cursore dovrebbe fermarsi sulla riga

#LoadModule php5_module libexec/apache2/libphp5.so

da cui dobbiamo togliere il carattere cancelletto (#) che la precede. Per fare questo possiamo digitare Ctrl+A per spostarci all’inizio della riga e poi Fn+Backspace (l’equivalente del Canc delle tastiere complete, misteriosamente non troppo sponsorizzato da Apple nei nuovi modelli di MacBook). Salvare quindi il file premendo Ctrl+X, seguito da “y” per confermare e infine Invio.

Installazione da zero

Per i più esperti e vogliosi di funzionalità (e di modernità, visto che la versione di php installata di default è piuttosto datata), riporto un tutorial di Marc Liyanage reperibile su questo sito.

Attenzione! Per poter funzionare, questa versione richiede necessariamente che non sia stato attivato il php incluso in Mac Os X (vedi punto precedente).

Scaricare dunque php dal sito di Marc oppure cliccando qui (conviene comunque fare un saltino sul sito perché la versione linkata da me potrebbe risultare datata nel prossimo futuro). Trattasi di un file pkg eseguibile e installabile con una procedura tipica dei programmi Mac.

Testare l’installazione

Per verificare che php è installato correttamente occorre creare un nuovo file nella cartella Macintosh HD – Libreria – WebServer – Documents e dargli estensione php, ad esempio “prova.php”. Aprite il file con un qualunque editor di testo (consiglio TextMate per questo tipo di operazioni, così la sintassi viene colorata risultando più chiara) e digitate

<?php phpinfo(); ?>

Salvate il file, tornate sul browser dove avete già testato Apache e digitate “localhost/prova.php”. Dovreste vedere la schermata di informazioni di php. Se ciò non accade, è necessario riavviare Apache digitando sudo apachectl restart nel Terminale.

Installare mysql

Per installare il popolare database firmato Sun (ormai parte del pesce più grosso Oracle), andate sul sito del produttore, cliccate Downloads – Download Mysql Community Server – Mac OS X (package format) e cliccate sul “Pick a mirror” relativo alla vostra architettura. Probabilmente Mac OS X 10.5 (x86_64) andrà bene.

Nella schermata successiva vi viene chiesto di registrarvi, ma con il link in basso “No thanks, just take me to the downloads!” vi risparmiate le fatica. Cliccate sul mirror che vi consiglia e scaricate il dmg del database server.

L’installazione di quest’ultimo è nuovamente piuttosto banale. Oltre al readme, ci sono tre file, da installare nel seguente ordine:

  • mysql-5.1.34-osx10.5-x86_64.pkg
  • MySQL.prefPane
  • MySQLStartupItem.pkg

Durante l’installazione del secondo, ricordatevi di premere “Start MySQL Server”. Se appare la scritta verde “running” significa che è tutto a posto.

Configurare php e mysql

Se avete installato php dal tutorial di Marc, non c’è nulla da fare, altrimenti occorre tornare nel Terminale e “smanettare” i file di configurazione di php.

Digitate sudo nano /etc/php.ini e cercate (Ctrl+W) la stringa “mysql.default_socket”. Dovete trasformare la riga mysql.default_socket = in mysql.default_socket = /tmp/mysql.sock. Salvate quindi nuovamente con Ctrl+X, “y” e Invio.

Testare mysql

Ora non resta che testare mysql. Per fare ciò potete tornare sul file di prova di prima e sostituirne il contenuto con

<?php mysql_connect("localhost", "root", ""); ?>

Se tornando sul browser alla pagina “localhost/prova.php” non vedete nulla, significa che il database funziona. Se così non dovesse essere, prima di cedere alla rabbia o alla rassegnazione provate a riavviare nuovamente Apache con il comando sudo apachectl restart.

Una volta a posto, consiglio di cambiare la password di root di mysql andando nel Terminale e digitando

sudo /usr/local/mysql/bin/mysqladmin -u root password newpass

sostituendo newpass con la nuova password.

4 thoughts on “Un server web completo su Mac Os X

  1. Grazie! Molto utile questa guida. Così posso imparare per bene php!

  2. e ora?…fatto questo come si procede?

  3. Seguito passo passo ma al punto “Configurare php e mysql” non mi trova la stringa da modificare il file è vuoto…

    mmm dove ho sbagliato?

    Grazie
    Cattivik3

  4. GLI AGGIORNAMENTI DI OS-X SI MANGIANO APACHE E PHP COMPILATI..perche’??

    Ciao, grazie per la guida.

    Di solito mi divertivo ad installare le ultime release di Apache e PHP, compilando i sorgenti, in modo da avere pieno controllo su tutto (GD comprese). E MySQL da package.

    MA……Ogni volta che Apple rilascia un aggiornamento di l’OS-X (ad esempio da 10.6.1 a 10.6.2) …
    DISGRAZIA…Apache e/o PHP non funzionavano piu’…ed ero costretto a ricompilare tutto da capo!!

    Come mai succede questo? C’e’ modo di installare Apache/PHP dai sorgenti, e far si che gli aggiornamenti di OS X non vadano a far casini?

    Grazie 1000
    alberto

Lascia un commento

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