Look right

Installazione di Entropy PHP 2.5.4 in Leopard OSX 10.5

Un breve articolo con le soluzioni ai diversi problemi che ho incontrato durante l’installazione del pacchetto Entropy PHP 2.5.4 su Leopard OSX 10.5.5.

Con Leopard 10.5 viene fornito Apache2, ed Apple mette già a disposizione una versione di PHP5 che deve essere semplicemente abilitata.
Per abilitarla, all’interno del file di configurazione /etc/apache2/httpd.conf, dobbiamo semplicemente decommentare la seguente riga:

#LoadModule php5_module        libexec/apache2/libphp5.so

.. che semplicemente diventerà:

LoadModule php5_module        libexec/apache2/libphp5.so

riavviando il server Apache, l’interprete PHP sarà attivo.

sudo apachectl restart

Generalmente, questa versione di php può essere sufficiente, ma nel mio caso è assente la libreria GD per la gestione delle immagini. Una soluzione potrebbe essere quella di scaricare i sorgenti da php.net e ricompilarli a piacere, oppure utilizzare il pacchetto Entropy PHP messo a disposizione da Marc Liyanage, che già utilizzavo su Tiger senza alcun problema e supportava completamente tutte le funzionalità dei miei applicativi, e mi evitava di peredere tempo con compilazioni di sorgenti ..etc..etc..
Purtroppo questa volta ho riscontrato qualche problema prima di poterlo renderlo operativo, riscontrando alcuni problemi.

Analizzando i log in /var/log/install.log ero riuscito a risolvere il problema dell’installazione, ma dopo non riuscivo comunque ad avviare apache. Dopo diverse ricerche ho trovato la soluzione nel forum di Entropy, il post riassuntivo è quello di davidje13 SOLVED: Entropy working on 10.5 after lots of errors

Nel mio caso l’installazione è andata a buon fine e il php funziona perfettamente su OSX 10.5.5 e Apache2 versione 2.2.9, per conoscere la vostra da console digitate

httpd -v

Di seguito la soluzione ad ogni possibile problema che potreste incontrare durante l’installazione (prendendo ovviamente spunto da quanto riportato nel post di davidje13 e traducendo in italiano per coloro che non hanno molta familiarità con l’inglese).


1. Errore durante l’installazione

Installazione non riuscita
Il seguente passo di installazione non è riuscito: run postflight script for Entropy PHP. Contatta il produttore del software per ottenere assistenza.

Una volta scaricato il pacchetto dal sito di entropy.ch , PRIMA DI PROCEDERE CON L’INSTALLAZIONE, tramite la console dovete creare un link simbolico alla cartella di apache2.

sudo ln -s /etc/apache2 /etc/httpd

Questo perchè Apache 1.3 manteneva le informazioni di configurazione in /etc/httpd, mentre con la versione 2 le informazioni sono passate in /etc/apache2 e il pacchetto Entropy nonostante sia dichiarato per Apache2 non punta alla cartella corretta.
Nel caso in cui abbiate già lanciato l’installazione e riscontrato l’errore, prima di proseguire, potete eliminare i file di entropy presenti in /Library/Receipts/
A questo punto potete procedere con l’installazione del pacchetto, la quale questa volta si dovrebbe concludere senza nessun errore.


2. Incompatibilità tra applicativi a 32bit e 64bit

Apache è a 64bit, mentre il pacchetto Entropy è a 32bit. E una soluzione per renderli compatibili è forzare Apache a girare a 32bit.
Per fare questo, nella console abbiamo l’utility lipo, che permette di gestire i file “universali”, come per esempio in questo caso, snellire il file per una particolare architettura.
Per prima cosa creiamo una copia di backup del file httpd, da utilizzare per ripristinare il binario di apache originale in caso di problemi

sudo cp /usr/sbin/httpd /usr/sbin/httpd-fat

Ora utilizziamo lipo con un’istruzione per esempio per le macchine con processore Intel

sudo lipo /usr/sbin/httpd -thin i386 -output /usr/sbin/httpd


3. Libreria libexpat.0.dylib non trovata

Il terzo problema riguarda un file mancante, ovvero il file libexpat.0.dylib, che però fortunatamente in OSX 10.5 in realtà esiste, ma semplicemente si chiama in un’altro modo e si trova in un’altro posto, e il tutto si può risolvere con un paio di link simbolici.

sudo ln -s /usr/local/php5 /usr/local/apache2
 
sudo ln -s /usr/lib/libexpat.dylib /usr/local/apache2/lib/libexpat.0.dylib


Fatto!!

A questo punto basterà riavviare il server Apache e tutto dovrebbe funzionare senza problemi!

sudo apachectl restart

Tags: , , ,

letto 2,781 volte

Leave a Reply

Security Code: