Ter um servidor web no OS X Mountain Lion é simples!

12 Comentários

Uma das principais características no OS X é o facto de ser um SO preparado para dar aos seus utilizadores todas as funcionalidades que eles necessitam, sejam elas quais forem.

Uma dessas necessidades, muitas vezes questionadas, é a forma de termos disponível uma plataforma de desenvolvimento web fácil de usar.

Como ter um webserver no OS X? A resposta é simples e rápida. Já lá está, só precisamos de o lançar e começar a produzir!

webserver_osx_1

A presença de um servidor web dentro do OS X não é nada de novo para os que estão habituados a usar o sistema operativo da Apple.

No entanto houve uma mudança aquando do lançamento da versão 10.8 (Mountain Lion), e as definições do servidor Web deixaram de estar acessíveis via Preferências do Sistema, sendo agora acessíveis apenas via linha de comando.

Mas esta mudança não será impedimento para que todos possam usar o WebServer Apache que acompanha o OS X Mountain Lion, sendo até possível usar de forma directa o PHP, na versão 5.

Antes de começarmos a explicar como podem fazer essa activação e configuração, deixamos aqui os locais onde podem encontrar os ficheiros que necessitam para fazer configurações mais apuradas, e que requerem mais conhecimentos.

Ficheiros de configuração
  • Ficheiros de configuração do Apache – /etc/apache2/httpd.conf
  • Ficheiros de configuração do PHP 5 – /etc/php.ini
Localizar pasta dos conteúdos

Antes de configurarmos e lançarmos o servidor web, necessitamos de descobrir a localização da pasta onde poderemos colocar os ficheiros com o site que queremos criar.

Esta pasta pode ser alterada a qualquer altura, mas para todos os que têm menos conhecimentos, recomendamos que não a alterem.

Para determinarem qual esta pasta é devem abrir um terminal e executar o seguinte comando:

grep '^DocumentRoot' /etc/apache2/httpd.conf

webserver_osx_2

O resultado desse comando será a pasta que procura e onde devem colocar os vossos conteúdos. Tipicamente o resultado será a pasta:

DocumentRoot "/Library/WebServer/Documents"
Controlar o servidor Web

Tal como muito outro software, o Apache é inicado ou terminado com um simples comando no terminal. Os comandos possíveis que podem dar estão apresentados abaixo:

sudo apachectl start
sudo apachectl stop
sudo apachectl restart
sudo apachectl graceful

Os dois primeiros comandos são perfeitamente compreensíveis e os dois últimos reiniciam o servidor, com a diferença que o último mantêm as ligações activas.

Se quiserem colocar o servidor Apache a ser iniciado no arranque do vosso sistema operativo devem correr o seguinte comando numa janela terminal:

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist
Iniciar o servidor Web

O primeiro passo para terem o vosso servidor Web a responder a pedidos é executar o comando de arranque. Corram então o comando abaixo numa janela terminal:

sudo apachectl start

Será pedida a password de adminstração do vosso Mac para que o serviço seja iniciado.

webserver_osx_3

Com o serviço Web a correr, a forma mais simples de o testar é aceder com um browser ao endereço local. Podem fazê-lo colocando no browser um dos seguintes endereços:

webserver_osx_4

A resposta será, como podem ver na imagem anterior, a apresentação de uma página com uma mensagem de sucesso.

Configurar o PHP

Apesar de terem o vosso servidor web a funcionar, este ainda não está preparado para tratar algumas linguagens usadas para programar e criar conteúdos. A mais usada e que devem ter activa é o PHP.

Tal como o Apache, também está disponível com a instalação do OS X. Devem apenas configurá-la no no Apache e fica pronta a ser usada.

Para o fazerem devem aceder à área de carregamento de módulos do Apache e retirar o caracter # que a está a comentar.

Num terminal devem executar o seguintes comando, que vos leva directamente à área pretendida, ou usar um outro qualquer editor de texto (deve ser usado com permissões de root).

sudo vi +/php5_module /etc/apache2/httpd.conf

webserver_osx_5

Retirem então o comentário que está antes da linha apresentada abaixo e gravem o ficheiro.

LoadModule php5_module libexec/apache2/libphp5.so

Depois disso devem reiniciar o servidor web para que as alterações que efectuaram sejam assumidas.

sudo apachectl restart

webserver_osx_6

Testar o PHP

A forma mais simples de testarem se o PHP está correctamente configurado e pronto a ser usado é através da criação de um ficheiro que mostre, por exemplo as informações do sistema. Para isso vamos recorrer à função phpinfo().

Comecem por criar um ficheiro na zona de colocação de conteúdos do Web Server:

sudo vi /Library/WebServer/Documents/phpinfo.php

Depois coloquem lá dentro o código que apresentamos abaixo:


Para testarem se está tudo como esperado devem apontar o vosso browser para o endereço do ficheiro que criaram. No nosso caso o endereço seria http://localhost/phpinfo.php.

O resultado será a apresentação de informação variada sobre o vosso OS X e o servidor que está a correr nele.

webserver_osx_7

Depois deste último passo, o processo de disponibilização do Apache com PHP no vosso OS X fica terminado e podem de imediato começar a colocar os vossos sites em funcionamento para testes.

Como podem ver não é nada complicado ter acesso a um servidor web dentro do vosso OS X. Não precisam de instalar com configurar nada. Basta alterar uma linha da configuração e lançar o serviço para que este fique de imediato disponível.

Faltam outros componentes para que possam desenvolver mais à séria sites, mas a base está aí, só têm de a usar!

Comentários

12

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de Ali

    Em alternativa, para quem tiver preguiça, basta instalar o MAMP

  2. Avatar de D
    D

    Obrigado pelo tutorial! É bom saber que este excelente SO já traz todas as ferramentas sem que seja preciso instalar mais nada!

    Que tal um post sobre aplicativos “MUST HAVE” no OSX?

    Tal como Paragon NTFS, Perian, unrarx, etc, etc.

  3. Avatar de tfae
    tfae

    Depois de ter o Apache a funcionar e de ter habilitado o PHP, a página http://localhost/phpinfo.php não me devolve nada, mesmo depois de reiniciar o Apache.
    O ficheiro php foi criado no DocumentRoot.
    O que se passará?

    1. Avatar de tfae
      tfae

      PS: o ficheiro de configurações do PHP (/etc/php.ini) não existe. Existe sim um php.ini.default, que é apenas um “About PHP”.

    2. Avatar de Answe
      Answe

      Usa isto no código do ficheiro php, como alternativa, abaixo, e depois já vai devolver.

      1. Avatar de tfae
        tfae

        Não percebi o que usar 🙂

        1. Avatar de Answe
          Answe

          Estranho, eu tinha colado o código para o comentário, mas o pplware deve retirar automáticamente, ou interpretar como código. Procura no Google como ver se o PHP está instalado, vais encontrar outro código semelhante, que já funciona e dá output. Por algum motivo também não consegui com esse código acima.

          1. Avatar de tfae
            tfae

            Obrigado Answe!
            Realmente o problema era nos “hífenes” 🙂

  4. Avatar de JSilva
    JSilva

    Bom tutorial.
    Eu uso o XAMPP for mac, funciona muito bem e é fácil de instalar. Traz de raiz apache2, MySQL, proftpd e phpMyAmin.

    Mas é bom saber que este OS já traz WebServer de raiz.

    Estou a começar a desenvolver em Mac, iOS e também Web e estou a gostar muito da experiência.

  5. Avatar de Luís Portela Afonso
    Luís Portela Afonso

    Boas,

    Bom tutorial, mas penso que era mais aconselhado a ensinar ativar a UserDir no apache.
    Para quem desenvolve em web e se não tiver grandes conhecimentos, esta é bem mais útil.

    É relativamente fácil.
    1º – criar a pasta Sites na vossa HomeFolder:
    Comando: mkdir /Users/`whoami`/Sites
    2º – no ficheiro /etc/apache2/httpd.conf localizem as linhas(estão seguidas)
    # User home directories
    Include /private/etc/apache2/extra/httpd-userdir.conf
    3º – A seguir devem criar o ficheiro com o vosso username dentro da pasta /etc/apache2/users/ sendo a extensão deste .conf de modo a ser carregada pelo apache.
    Comando criação do ficheiro:
    sudo vim /etc/apache2/users/`whoami`.conf
    ou então com conteúdo:
    echo ‘\n\tAuthType Basic\n\tOptions Indexes MultiViews FollowSymLinks\n\tAllowOverride All\n\tOrder allow,deny\n\tAllow from all\n’ | sudo tee /etc/apache2/users/`whoami`.conf > /dev/null

    Isto permite colocar os projectos na pasta Sites que foi criada na home folder e ter um rapido deployment sem grandes alterações do apache.

    1. Avatar de Luís Portela Afonso
      Luís Portela Afonso

      Há um erro no conteúdo, peço desculpa.
      Correção:

      echo ‘\n\tAuthType Basic\n\tOptions Indexes MultiViews FollowSymLinks\n\tAllowOverride All\n\tOrder allow,deny\n\tAllow from all\n’ | sudo tee /etc/apache2/users/`whoami`.conf > /dev/null