Apache + PHP 5 + MySQL + PostgreSQL no Mac OS X 10.6.2

Enviado por Alfred R. Baudisch em PHP, Apache, MySQL, PostgreSQL, Mac OS X.
Ir para os Comentários.

Finalmente realizei um sonho: passei de Windows para MAC!

Porém, como tudo que é novo, as dificuldades surgiram, em especial uma que causa muita dor de cabeça em usuários do Windows, quem diria Mac (pelo menos como no meu caso, os “Mac switchers”): fazer funcionar um ambiente de desenvolvimento PHP.

O Leopard vem com Apache e PHP 5 funcionais, inclusive com todas as extensões tradicionais (GD, Curl, MySQL, etc), o problema surgiu quando vi que não existia a extensão do PostgreSQL em nenhum lugar.

O fato é que essa instalação padrão do PHP tem que ser recompilada. Para quem a vida toda usou Windows, isso é algo totalmente novo*. Tentei, tentei, tentei e nada, não consegui fazer funcionar um novo PHP, mesmo seguindo mais de 5 artigos diferentes.

Até que me deparei com um artigo que explica sobre a instalação da stack de desenvolvimento com MacPorts. BINGO!

Guia de Instalação

O passo-a-passo da instalação.

  1. Download MacPorts: http://www.macports.org/install.php
  2. Após instalar, atualize o MacPorts:
    sudo port -v selfupdate
  3. Instale a stack de desenvolvimento (demora uns 10 minutos):
    sudo port install php5 +apache2 +php5-mysql +php5-postgresql +php5-gd +php5-curl +php5-mcrypt +php5-gettext
  4. Edite o httpd.conf que estará localizado em
    /opt/local/apache2/conf/httpd.conf

    Adicionar as linhas nas seções correspondentes:
    LoadModule php5_module modules/libphp5.so

    DirectoryIndex index.html index.php

    AddType application/x-httpd-php .php
    AddType application/x-httpd-php-source .phps

    Obs: Adicione, ironicamente, os Mime Type do PHP fora da condicional <IfModule mime_module>.

  5. Crie o php.ini
    cp /opt/local/etc/php5/php.ini-development /opt/local/etc/php5/php.ini
  6. Edite o php.ini, agora localizado em /opt/local/etc/php5
  7. Aponte o diretório de extensões:
    extension_dir = "/opt/local/lib/php/extensions/no-debug-non-zts-20090626/"
  8. Adicione a lista de extensões:
    extension=gd.so
    extension=mysql.so
    extension=mysqli.so
    extension=pdo_mysql.so
    extension=pdo_pgsql.so
    extension=pgsql.so
    extension=curl.so
    extension=mcrypt.so
    extension=gettext.so
  9. Configure a Timezone:
    date.timezone = 'America/Sao_Paulo'
  10. Adicione o Apache ao startup:
    sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist
  11. Baixe e instale o package do PostgreSQL: http://www.postgresql.org/download/macosx
  12. Baixe e instale o package do MySQL: http://dev.mysql.com/downloads/mysql/. O usuário padrão da instalação será root e nenhuma senha.
  13. Reinicie o Apache:cd /opt/local/apache2/bin/
    sudo ./apachectl restart

Fontes:


7 Respostas para “Apache + PHP 5 + MySQL + PostgreSQL no Mac OS X 10.6.2”

  1. Mackson Escreveu:

    Amigo,

    Muito obrigado tutorial, foi de grande valia. No meu caso, ele funcionou 90%, pois tive alguns problemas após finalizar:

    1-Acesso negado ao documentRoot:
    Nas diretivas de configuração de diretório do httpd.conf, estava como Deny. Então foi necessário alterar para Allow.

    2-Ao usar o Kohana, tive problema com a extension Iconv.
    Tive que reinstalar a extension com sudo port install php5-iconv

    3-Após instalar o Iconv, tive problema com as extension do mysql e postgres.
    Tive que instalar novamente as 2. Após a instalação do mysql, o log me informou p/ remover a linha que apontava as extensões “extension_dir = /opt/local/lib/php/extensions/no-debug-non-zts-20090626/”.
    Feito isso, funcionou 100%.

    Muito obrigado!

  2. Rammses Escreveu:

    ainda nao funcionou totalmente. Estou utlizando o apache do SO. O postgres nao ativa.

  3. Alfred R. Baudisch Escreveu:

    Rammses, a idéia é justamente instalar o apache novamente pelo macports, para que possamos instalar as libraries por ele. Também não tinha conseguido PGSQL no Apache que vem com o Snow Leopard. Reinstalei o Apache usando o procedimento do tutorial, e tudo funcionou.

  4. Mateus Escreveu:

    Olá… não veio o diretório “extensions” … estranho… tem alguma dica?

  5. Eliel de Paula Escreveu:

    É só usar o XAMPP ou o MAMP no melhor estilo de “arrastar e soltar” do MAC, uso o XAMPP a muito tempo e nunca tive problemas.

  6. Rammses Escreveu:

    por acaso em alguma de suas tentativas ele nao instalou o postgres nem o mysql? rolou direitnho, mas o php nao esta com suporte aos bancos. nem mesmo o pdo indica possuir driver dos bancos…

  7. Alfred Escreveu:

    Foi tudo de primeira por aqui. No caso, veja no artigo que eu indico para alterar o path das extensões.

Comente!