Setting the php.ini MAMP file as default on OSX

VictorR Jueves, 5 de Marzo del 2009

Etiquetas: , , ,

Hace poco, muy poco, que sigo el tutorial Jobeet para aprender a utilizar Symfony y así hacer subir mi geek power. Desde aquí, lo recomiendo firmemente.

Bien, primer hecho, para el correcto/buen uso de este framework, es necesario tirar de Terminal (en mi caso OSX, cmd en Win) y ejecutar comandos para crear, generar, modificar, cargar el proyecto/aplicación/base de datos… Symfony está implementado con PHP 5 por ser un framework orientado a objetos (creo recordar que como requerimiento es necesario la versión 5.2). Y muchos de esos comandos ejecutados desde el Terminal, son precisamente scripts de PHP.

Segundo hecho. Mac OS X, por lo menos en su última versión, 10.5 (Leopard) tiene configurado ya una versión de PHP.

Tercer hecho. Yo que soy un poco gandul, decidí bajar, antes de ponerme a configurar nada a mano, la versión gratuita de MAMP (Mac OSX, Apache, MySQL, PHP).

Problema. A partir de ahí, los 3 hechos anteriores, ya te puedes poner como un loco a tocar la configuración del php del MAMP, que la versión que utilices por línea de comando o Terminal en tu Mac, es la preinstalada. De esto me di cuenta cuando revisando la configuración en MAMP, y revisando la configuración por el Terminal, habían sustanciales diferencias entre ambas versiones.

Después de probar y acceder a los scripts de php por el terminal, y preguntarme dónde está esta preinstalada versión, y ver que ni siquiera había un php.ini configurado intenté modificar los ficheros de configuración de la versión preinstalada para que apuntaran al php.ini del MAMP.

Bien, si por el Terminal pruebas el siguiente comando:

$ php --ini

debería aparecer la información sobre dónde encontrar el fichero php.ini (Path /etc), y dónde busca nuevos ficheros equivalentes para su uso. En mi caso, todos los resultados eran “(none)”. Así que ni corto ni perezoso (pero si gandul), voy al directorio /etc y le hecho un vistazo. Aquí, aparte de muchos ficheros de configuración encontré un php.ini.default (por si no lo sabes, lo puedes renombrar quitando el .default final y sería el fichero utilizado). Pero como he dicho antes, este no es el php.ini que quiero usar.

Así que mi solución ha sido la de crear un link al php.ini de MAMP, en mi caso en /Applications/MAMP/conf/php5/php.ini.

Atención, necesitarás permisos de root (o super usuario) para poder crearlo, si lo quieres activar puedes hacerlo como indico aquí Activar el Super Usuario en OS X.

Y luego ejecutar (siempre dentro de /etc):

$ sudo ln -s /Applications/MAMP/conf/php5/php.ini php.ini

Sólo debes introducir el password de super usuario y listo. Al volver a ejecutar el comando php –ini debería aparecer algo parecido a esto.

php --ini

¡Pedazo de invento los links! Aquí podemos ver que “Loaded Configuration File” es /Applications/MAMP/conf/php5/php.ini, es decir, el fichero php.ini del MAMP.

5 comentarios a "Setting the php.ini MAMP file as default on OSX" »
Comentario de Joel — Lunes, 25 de Mayo del 2009 @ 4:44

gracias!!!!!! es (era!) justo mi caso :D

Comentario de Juan Carlos Requena — Martes, 26 de Mayo del 2009 @ 21:15

Hola, ante todo agradecerte el tutorial, y preguntarte si a ti te viene con el Mamp activado el PDO para mysql, ya que a mi no me viene y no hay manera de hacer funcionar propel…

Comentario de VictorR — Lunes, 1 de Junio del 2009 @ 14:01

Hola Juan Carlos, el PDO de MySQL viene instalado en el MAMP. Una de las razones por las que detecté que no era el mismo php.ini el que veía por línea de comados y el que veía en el phpInfo() del MAMP es que difería en este aspecto.

De todas maneras he buscado cómo instalarlo en MySQL and PDO on OS X Leopard, Intel de Tom Gidden. Espero que te sea de ayuda.

Un saludo,

Comentario de rodolfo — Jueves, 4 de Junio del 2009 @ 3:45

Hola quisiera hacerte una pregunta sobre mamp, lo que pasa es que lo instale en mi imac y todo parece funcionar bien a ecepcion de que no consigo ver las paginas con codigo php tal vez me hace falta configurar algo, si tu sabes donde tengo el problema y me lo puedes decir te lo agradecere mucho.

Comentario de VictorR — Viernes, 5 de Junio del 2009 @ 9:49

Hola rodolfo,

Así de golpe y sin ver tu configuración exacta es un poco dificil dar con la solución… Lo primero que se me ocurre es que no tengas el módulo de php activado en el apache, aunque si lo que has configurado es el MAMP lo lógico es que ya esté activado. Comprueba en el fichero httpd.conf del MAMP que las siguientes líneas existan y no estén comentadas:

LoadModule php5_module        modules/libphp5.so
AddType application/x-httpd-php .php .phtml

Un saludo.

Suscripción RSS a los comentarios de esta entrada. TrackBack URL

Deja tu comentario

* Obligatorio. ** Obligatorio, no será publicado.