OS X 10-10 Yosemite istallare Apache php mysql

DiFabio

OS X 10-10 Yosemite istallare Apache php mysql

OS X 10-10 Yosemite istallare Apache php mysql

OS X 10-10 Yosemite istallare Apache php mysql

Istallare apache su OS X 10.10 Yosemite

In questo articolo vi spiegheremo come procedere su OS X 10-10 Yosemite per istallare Apache php mysql .

Nel precedente articolo vi abbiamo parlato di come istallare apache php e mysql su OS X Mountain Lion.

In realtà, dopo Mountain Lion è stata la volta di OS X 10.9 Mavericks, ma l’articolo non è cambiato, in quanto la guida scritta precedentemente per OS X 10.8, restava valida anche per Mavericks.

Nella giornata del debutto si Yosemite, ho subito provveduto ad eseguire l’aggiornamento (per chi volesse farlo consiglio di leggere la guida su come eseguire l’aggiornamento a OS X Yosemite), preso dalle tante novità su “continuity” e tutto il resto che probabilmente già conoscete. Novità su cui mi sono concentrato fino ad oggi che ho deciso che era il momento di smanettare con Apache & Co.

Come mio solito clicco sulla mia homepage http://localhost/~mioutente/ e indovinate un po? Un bel 404:

Arrivano gli errori su Apache

Yosemite apache 404 error

Yosemite apache 404 error

Sinceramente non me lo aspettavo assolutamente. Non era mai capitato con gli upgrade precedenti. Nè da Lion a Mountain Lion, ne da Mountain Lion a Mavericks. La prima cosa che ho pensato è stata: “Vedrai che hanno tappato l’aggiornamento e hanno cancellato la cartella dell’utente.“. Per prima cosa quindi sono andato a verificare che la cartella Sites nella home directory del mio utente fosse ancora li, con tutti i files presenti fino a prima dell’aggiornamento. Ovviamente avevo provveduto ad eseguire il backup dei dati prima di lanciare il setup, per ero tranquillo. Ebbene, la cartella c’era, proprio come prima.
Sono così andato nella cartella /var/log/apache2/ , che ospita i logs, a leggere cosa riportassero. Negli error_log un bel nulla, negli access_log un bel 404 … eppure la cartella Sites era proprio li, dove “avrebbe dovuto essere”. Decido così di investigare più approfonditamente.

Analisi delle problematiche

Il prossimo passo sarebbe stato ispezionare la cartella dei files di configurazione: /etc/apache2/ . Dopo un “ls” ho iniziato a capire qualcosa. Tanto per iniziare, sono stato tanto stupido da pensare a un errore così grossolano da parte di Apple. Sicché un riparatore “Mi sembrava strano!” mi p saltato in testa. A cosa mi sto riferendo? Vediamo chi di voi indovina!??!!? Nella cartella /etc/apache2/  che ospita i

mac os x yosemite apache etc folder

mac os x yosemite apache etc folder

files di configurazione di apache ho trovato un file chiamato httpd.conf~previous che, come da nome, mi ha fatto chiaramente pensare a una copia di backup.

E infatti così è. Il file di configurazione httpd.conf di Yosemite differisce sensibilmente da quello di Mavericks, ma quel poco basta a far si che non funzioni più nulla ( o quasi ). Perché “O QUASI”? Perché La homepage di apache, ovvero http://localhost continuava a mostrare il famoso :

It works!

Quello che non funzionava era la mia homepage e quella di tutti gli utenti configurati sul Mac.

Soluzione vediamo come istallare Apache php mysql su OS X 10-10 Yosemite

Per gli informati del settore è noto che c’è una funzionalità, ovvero un modulo apache, che permette la configurazione delle home-direcotory degli utenti. Il modulo in questione si chiama: userdir_module . Ebbene nel nuovo file httpd.conf questo modulo è commentato, ovvero appare in questo modo:

#LoadModule userdir_module libexec/apache2/mod_userdir.so

Vediamo come risolvere questi problemi. Apriamo il file di configurazione tramite il comando (vi verrà chiesta la password di root):

sudo vi /etc/apache2/httpd.conf

Andiamo alla riga 166 e decommentiamo (togliere il commento, ovvero il cancelletto #) la riga in questione facendola diventare:

LoadModule userdir_module libexec/apache2/mod_userdir.so

Non finisce qui. C’è un’altra riga nell’httpd.conf che ci interessa. E’ la riga che ci dice come far funziona il modulo userdir, ovvero la riga di configurazione. Questa è la riga 493 dello stesso file ed è così riportata:

#Include /private/etc/apache2/extra/httpd-userdir.conf

Anche qui provvediamo a decommentarla, facendola diventare:

Include /private/etc/apache2/extra/httpd-userdir.conf

Siamo finalmente all’ultima modifica. Con l’aggiornamento è stato anche disabilitato il modulo php. Andiamo alla riga 169:

#LoadModule php5_module libexec/apache2/libphp5.so

togliamo il cancelletto e facciamola diventare:

LoadModule php5_module libexec/apache2/libphp5.so

Ora possiamo salvare il file di configurazione.
Se avete leggo la guida su apache su os x (valida fino a 10.9) ricorderete che bisognava indicare al sistema quale fosse la cartella in cui avrei risposto i miei files e che sarebbe diventata la mia Document Root. Nel caso precedente il file da modificare era:

/etc/apache2/users

Beh, non ci crederete (ovviamente è una battuta 😉 ) ma è cambiata anche questa. E provate a indovinare quale il nuovo file da configurare per far sapere al sistema qual’è la mia Document Root? Esattamente il file di configurazione riportato alla riga 493 del di cui abbiamo parlato poco fa.
Andiamolo a modificare (anche qui verrà richiesta la password di root):

sudo vi /private/etc/apache2/extra/httpd-userdir.conf

Subito sotto

UserDir Sites

aggiungiamo le righe:

<Directory “/Users/mioutente/Sites/”>
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>

Ricordatevi di modificare mioutente con il nome dell’utente che state utilizzando

Salviamo il file ed il lavoro è completato. Non ci resta che riavviare il nostro apache con il comando:

sudo apachectl restart

 

Il problema su OS X 10-10 Yosemite di Apache è stato risolto. Ora potete continuare con php e mysql seguendo la guida precedente saltando ovviamente la parte relativa ad apache che abbiamo esplicato qui.

Buon lavoro e come al solito …. se avete dei dubbi, commentate!

Info sull'autore

Fabio administrator

Appassionato di tecnologia, lavoro nel mondo dell'informatica dal 1999. Mi diletto con PHP e MYSQL e ultimamente mi sono appassionato al mondo SEO ...più per sfida che per necessità. In questo blog voglio condividere con gli utenti quello che imparo, sperando che altri possano trarne "profitto" .

9 Commenti finora

TizianoPubblicato il8:48 pm - Ott 28, 2014

dopo aver seguito la guida in ogni passo, mi da comunque questo messaggio:

Forbidden

You don’t have permission to access /~tizio/phpmyadmin/setup/ on this server.

come posso risolvere?

Premetto che ho diritti di lettura e scrittura in tutte le cartelle ed elementi inclusi, grazie!

Fabio IegriPubblicato il6:49 pm - Ott 29, 2014

Ciao Tiziano.
Invece accedi a http://localhost/~tizio ?

F.

GiuseppePubblicato il1:00 pm - Ott 31, 2014

Ho lo stesso problema. Il server funzione, ma se accedo a http://localhost/~mionome da You don’t have permission to access /~mionome/ on this server

Fabio IegriPubblicato il1:46 pm - Ott 31, 2014

Ciao Giuseppe, a http://localhost accedi?

Hai creato la cartella /Users/mio utente/Sites ? Ovviamente modificando mioutente

singhPubblicato il4:15 pm - Nov 6, 2014

ciao fabio, anchio ho lo stesso problema di giuseppe è ho modificato anche il nomeutente

luigiPubblicato il9:18 am - Giu 8, 2015

ciao ho installato mamp sul mio nuovo air (yosemite)ho importato i miei progetti basati su codeigniter. il risultato è che non mi funziona il mod rewrite su nessun progetto. ho seguito il tuo tutorial ma il risultato è lo stesso: the requested url was not found on this server. idee? grazie anticipatamente

    Fabio IegriPubblicato il9:26 am - Giu 8, 2015

    Ciao Luigi, la prima domanda che mi viene (sicuramente banale ma proviamo) è attivo il modulo mod_rewrite dell’apache?
    Lancia il comando sudo vi /etc/apache2/httpd.conf
    e cerca la riga:
    LoadModule rewrite_module libexec/apache2/mod_rewrite.so

    Se è commentata, ovvero se inizia con un #, allora eliminalo e riavvia apache.

    Scusami se questo primo indizio è banale ma per ora non molto su cui basarmi.

    Fammi sapere
    Fabio

Configurare apache su Mac OS X 10.11 El CapitanPubblicato il2:35 pm - Ott 1, 2015

[…] 10.10 a 10.11. Vi avevamo già mostrato come istallare apache php e mysql su OS X Mountain Lion e come risolvere i problemi in apache nel passaggio tra OS X 10.8 e 10.10 (la versione 10.9 Mavericks non aveva dato […]

Lascia una risposta