L’articolo è diviso in 3 parti:
Abilitare il PHP e modificare httpd.conf e phph.ini
Installazione di MySQL
Installazione di phpMyAdmin

Abilitare il PHP e modificare httpd.conf e phph.ini
A differenza del precedente articolo, ho modificato i file del system di OS X 10.8 per avere un server web in locale. Avevo abbandonato questa tradizione dai tempi di Mac OS X 10.4.4!

Per fare le modifiche sono necessari:

creare la cartella Siti

Creare la cartella “Siti” all’interno del nostro che verrà usata come “Document Root”.

Per modificare il file httpd.conf e php.ini si può procedere in due modi:

A) Modificare httpd.conf e php.ini contenuti nel system con TextWrangler.
B) Sostituire httpd.conf e php.ini contenuti nel system via terminale.

finestra di dialogo di TextWrangler

Metodo A:
Modificare httpd.conf e php.ini contenuti nel system con TextWrangler
Menù File > Open…
Come punto di partenza, selezionare l’hard disk del mac.
dalla finestra di dialogo alla voce Enable: selezionare Everyting, segno di spunta su Show hidden items

httpd.conf

Selezionare la cartella etc con il simbolo dell’alias > apache2 > per arrivare al file httpd.conf. Click su Open.

Sbloccare i file di sistema

Per essere modificato il file httpd.conf deve essere sbloccato: fare click sull’iconcina a forma di matita sbarrata. Premere Unlock sulla finestra di dialogo.

Abilitare il PHP
rimuovere il cancelletto (che funge da commento) davanti all’istruzione:

LoadModule php5_module libexec/apache2/libphp5.so
Abilitare il modulo di PHP5

Impostare la Document Root
cercare l’istruzione

DocumentRoot "/Library/WebServer/Documents"

commentarla (aggiungere il cancelletto) e aggiungere:

DocumentRoot "/Users/NOME_USER/Sites"
Abilitare la DocumentRoot

al posto di NOME_USER si scrive il nome utente, nel mio caso test.
NOTA 1: la stringa con il cancelletto è lʼoriginale posizione della cartella destinata alla Document Root.

Nome Utente

NOTA 2: NOME_USER è il nome dellʼutente di Os X. Per sapere il nome esatto aprire la cartella “Utenti”, cercare lʼicona con lʼimmagine di una casa. Nella macchina che sto usando corrisponde a test.

Impostare la web root
Cercare l’istruzione

<Directory "/Library/WebServer/Documents">

commentarla e aggiungere il percorso della cartella Siti, nel mio caso:

<Directory "/Users/test/Sites">
Web Root

Priorità
Modificare l’istruzione della DirectoryIndex da

DirectoryIndex index.html

a

DirectoryIndex index.php index.html
DirectoryIndex

in questo modo viene data la precedenza a index.php.

Modifcare il php.ini

Modificare php.ini
Con TextWrangler si apre il file php.ini.default contenuto nella cartella etc.
Nota 3: anche questo file va sbloccato come fatto in precedenza con httpd.conf (Unlock)

Cercare l’istruzione

display_errors = Off

commentarla e aggiungere

display_errors = On
DisplayError = On

Per non avere messaggi di “Warning” durante l’utilizzo dlla funzione date( ) negli script PHP si deve impostare il date.timezone in php.ini.
Da

;date.timezone =

A

date.timezone = 'Europe/Rome'
date.timezone in php.ini

Maggiori spiegazioni su php.net

salvataggio di php.ini

Salvataggio di php.ini
Da TextWrangler: Menù File… > Save As… > php.ini nella cartella etc click su Save, inserire la password se richiesta.

verifica salvataggio di php.ini

Per verificare che l’operazione sia andata a buon fine, si apre la cartella etc e si va alla ricerca di php.ini

Script Shell per Apache

Test delle funzionalità
Per far partire il server fare doppio click sull’iconcina “Start Apache”, nel caso inserire la password se richiesta, i file sono contenuti in File Apache PHP e Mysql su Os X 10.8.
Nota 4: Start Apache, Stop Apache e Restart Apache sono dei Script Shell.
Start Apache = fa partire il server
Stop Apache = spegne il server
Restart Apache = Riavvia il server

phpinfo()

Dalla cartella File di Test prendere phpinfo.php e metterlo nella cartella Siti.

Browser su phpinfo()

Aprire il browser e digitare 127.0.0.1 il risultato deve essere come da immagine

phpinfo() eseguito nel browser

Facendo click su phpinfo.php verrà visualizzata una lunga pagina con utili informazioni su PHP, Apache e altro.

Metodo B:
Sostituire httpd.conf e php.ini contenuti nel system via terminale.

Il metodo che preferisco: un paio di minuti e si è subito operativi. Copiare il file httpd.conf dalla cartella “File di Configurazione”, aprirlo con TextWragler, alla riga 170 troverete una stringa di questo tipo:

DocumentRoot "/Users/NOME_USER/Siti"
modificare httpd.conf
modifica dell'httpd.conf

Al posto di NOME_USER scrivere il “nome utente”, lo stesso va fatto alla riga 198.
Per sapere qual’è il proprio nome utente fare riferimento alla Nota 2.

file di configurazione da spostare con il terminale

Spostare i file
Prendere i file httpd.conf e php.ini e posizionarli nell’HD alla stesso livello di Applicazioni, Libreria, Sistema e Utenti come da immagine.

Aprire il terminale e digitare

sudo su
terminale - sudo su

premere il tasto invio e digitare la password

terminale - password

Appare una schermata simile:

da terminale digitare questo comando

mv /httpd.conf /etc/apache2/
terminale - mv /httpd.conf /etc/apache2/

sempre da terminale digitare

mv /php.ini /etc/

premere invio.
I file di configurazione sono stati spostati nella giusta posizione.
Via terminale digitando

sudo apachectl -t

si verifica la sintassi dei file di configurazione di Apache.
Via browser, digitando 127.0.0.1 si può testare il perfetto funzionamento.

Vai alla seconda parte del tutorial: Installazione di MySQL

Please follow and like us:

8 commenti

serra · 19 Marzo 2013 alle 15:03

ECCEZIONALE
GRAZIE

Daniele

daniele · 23 Aprile 2013 alle 16:24

Per darti una risposta esauriente dovrei poter vedere cosa succede e che tipo di errore visualizzi a monitor, comunque andiamo per esclusione:
Che tipo di mac e che system è installato?
Hai seguito passo-passo la guida?
Prova a eseguire questo comando nel terminale: sudo apachectl -t fammi sapere che tipo di errore ti viene restituito.
A presto!

Antia · 26 Aprile 2013 alle 0:43

verificando la sintassi con : sudo apachectl -t
ottengo questo:

httpd: Syntax error on line 117 of /private/etc/apache2/httpd.conf: Cannot load /usr/libexec/apache2/libphp5.so into server: dlopen(/usr/libexec/apache2/libphp5.so, 10): Library not loaded: /usr/lib/libpq.5.dylib\n Referenced from: /usr/libexec/apache2/libphp5.so\n Reason: image not found

ps: ho tolto anche il commento ‘#’ e il php risulta abilitato.

come posso risolvere?

Grazie.

    Daniele

    daniele · 28 Aprile 2013 alle 19:53

    Ciao, scusa il ritardo, ho fatto un po’ di meritata vacanza 🙂

    Non mi è mai capitato un problema del genere, ho fatto una ricerca ed ho trovato una possibile soluzione a questo indirizzo: http://ezcocoa.com/?p=1777

    In alternativa puoi optare per l’utilizzo di MAMP. Un breve articolo su MAMP sempre dal mio blog.

    A presto!

Gloria · 2 Novembre 2014 alle 23:07

ciao! Ho seguito la guida passo passo…. ma non mi funziona nulla!!! Se digito 127.0.0.1 mi da come risultato “It works” ma se metto l’indirizzo completo di nome utente per vedere la mia cartella siti…. mi restituisce URL not found. Ho provato il comando suggerito qua sopra… syntax OK.

    Daniele

    Daniele · 3 Novembre 2014 alle 13:42

    Controlla se hai impostato correttamente la Document Root e la Wb Root.

    A presto!

Enio · 12 Novembre 2016 alle 22:16

Ciao Daniele,
Ho installato El Capitan vorrei installare e configurare il localhost, .posso usare e seguire la guida sopra descritta? son0 un principiante autodidatta.

    Daniele

    Daniele · 13 Novembre 2016 alle 11:23

    Ciao Enio,

    Non dovresti avere nessun problema. Ti consiglio di usare MAMP, semplice veloce e facile da impostare. Qui una piccola guida su MAMP.

    A presto!

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.

Ti piace questo blog? Condividilo!