Tengo tres versiones instaladas de php en mi Mac. Cuando verifico el uso de phpinfo () a través de un navegador web, el que se está invocando es la versión 5.3.15. Me gustaría cambiarlo a la instancia instalada que es la versión 5.4 para el módulo apache (no es necesario para la CLI).
La razón por la que me gustaría hacer esto es porque he usado MacPorts para instalar php_geoip, pero es para la versión 5.4.
Background
Cuando uso "which" veo lo siguiente:
$ which -a php
/opt/local/bin/php
/usr/bin/php
$ which -a php54
/opt/local/bin/php54
Luego, al verificar la versión de cada uno de estos se obtiene lo siguiente:
$ /opt/local/bin/php --version
PHP 5.3.19 (cli) (built: Dec 15 2012 01:08:10)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.2.1, Copyright (c) 2002-2012, by Derick Rethans
$ /usr/bin/php --version
PHP Warning: PHP Startup: geoip: Unable to initialize module
Module compiled with module API=20100525
PHP compiled with module API=20090626
These options need to match
in Unknown on line 0
PHP 5.3.15 with Suhosin-Patch (cli) (built: Aug 24 2012 17:45:44)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies
with Xdebug v2.2.0-komodo, Copyright (c) 2002-2012, by Derick Rethans
$ /opt/local/bin/php54 --version
PHP 5.4.10 (cli) (built: Dec 20 2012 19:30:08)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies
Tenga en cuenta que las comprobaciones de versión de CLI solo se utilizan para determinar la versión de cada instancia. En realidad, es la versión correcta del módulo de apache libphp5.so que, en última instancia, necesitaré para trabajar.
Como se puede ver en lo que antecede, hay un mensaje de error de la instancia 5.3.15 que creo que proviene de mis esfuerzos para intentar cargar geoip.so, de la siguiente manera:
; 2013-01-10 enable geoip
extension="/opt/local/lib/php54/extensions/no-debug-non-zts-20100525/geoip.so"
En otras palabras, usé MacPorts para instalar php_geoip y, como parte de eso, instaló la dependencia de php54, porque la versión de geoip.so en el árbol de puertos de MacPorts necesita php 5.4. Intenté realizar la carga de geoip.so de php 5.3.15 desde la instancia de php 5.4, pero no funciona, como muestra el mensaje de error.
A continuación, intenté cambiar la instancia de php a la versión 5.4 cambiando la declaración LoadModule como se muestra aquí:
# 2012-10-28: enable php
# LoadModule php5_module libexec/apache2/libphp5.so
# 2013-01-13: change to more recent version of installed php - does not work
LoadModule php5_module /opt/local/apache2/modules/libphp5.so
Sin embargo, esto evita que php funcione en absoluto.
Para resolver mi problema, necesito obtener una versión compatible con php 5.3.15 de geoip.so, o hacer que mi sistema use la instancia de php 5.4. Cualquier orientación sobre cualquiera de estos enfoques es apreciada.