• Início
  • Fórum
  • Serviços
  • Downloads
  • Wiki
  • Lista de sites vulneráveis
Fique por dentro

Configurando Ambiente de Desenvolvimento em PHP no Linux.

jan09
2012
9 Comentários Postado por jrholowka

Antes de escrever qualquer linha de código com PHP, precisamos ter um ambiente de programação instalado e configurado. Muitos programadores quando iniciam o desenvolvimento PHP, não sabem quais as melhores ferramentas utilizar. Com isso, decidi escrever um tutorial que mostra passo a passo como instalar e configurar o seu.

Para a instalação do ambiente de programação PHP precisaremos de 3 elementos principais, um servidor HTTP (Apache, IIS, etc), que será responsável por gerenciar as requisições HTTP feitas pelo navegador WEB (Chrome, Firefox e outros).

O segundo elemento é o interpretador de scripts PHP, que será responsável por interpretar os scripts escritos em PHP, transformando-os em HTML puro. E finalmente o banco de dados, que neste nosso caso utilizaremos o MySQL.

Neste artigo utilizo o Ubuntu 11.04, então se você está utilizando alguma outra distribuição, os nomes dos pacotes a serem instalados podem variar.

Para seguir com este tutorial, falaremos do ambiente utilizando:

  • Sistema Operacional: Ubuntu 11.04
  • Servidor WEB: Apache 2
  • Banco de Dados: Mysql 5
  • Interpretador de Scripts: PHP 5
  • Teste Unitário: PHPUnit
  • Debuggin de Scripts PHP: Xdebug
  • Alternative PHP Cache (APC)
  • IDE de Desenvolvimento: Eclipse + PDT
  • Depuração de Código HTML/JavaScript/CSS/etc.: Google Chrome

Instalando o servidor Apache 2

Abra o console a partir do menu Aplicativos -> Acessórios -> Terminal e digite:

$ sudo apt-get install apache2

Insira a senha de root quando solicitado, dê um “s” quando perguntado se deseja instalar os pacotes e aguarde o término da instalação.

Após a instalação, abra seu navegador e digite a url: http://localhost/

Você deverá ver a seguinte informação no navegador:

Instalando o banco de dados MySQL

Abra o terminal e digite:

$ sudo apt-get install mysql-server mysql-client

Durante a instalação, vai aparecer uma janela para configuração da senha de root do mysql:

E depois repita a senha:

Aguarde o final da instalação.

Instalando o PHP 5

Abra o terminal e digite:

$ sudo apt-get install php5 libapache2-mod-php5

Nesse ponto, é necessário reiniciar o apache.

Ainda no terminal digite:

$ sudo /etc/init.d/apache2 restart

Agora que o PHP foi instalado, vamos testar!

Testando o PHP

Agora criaremos um arquivo para testar o PHP. Digite no seu console:

$ sudo gedit /var/www/info.php

O editor de textos gedit será aberto, no entanto você poderá utilizar qualquer outro editor de sua preferência.

Digite no editor:

<?php phpinfo(); ?>

Salve o arquivo e feche o editor.

Abra novamente o seu navegador e acesse o endereço: http://localhost/info.php

Se tudo ocorrer certo, você verá as seguintes informações:

Com o PHP funcionando precisaremos instalar mais alguns módulos adicionais, incluindo o suporte ao MySQL.

Abra o terminal e digite:

$ sudo apt-get install php5-cli php5-sqlite php5-suhosin php5-xcache \ php5-xsl php5-memcache php5-curl php5-gd php5-mcrypt php5-json php5-mysql \ mysql-server mysql-admin mysql-query-browser

Reinicie o apache novamente:

$ sudo /etc/init.d/apache2 restart

Novamente, digite no seu browser: http://localhost/info.php

Agora teremos suporte à vários módulos que instalamos, inclusive ao MySQL:

 

Instalando o PHPUnit

O PHPUnit é um framework para testes unitários em código PHP. Lembrando que testes unitários são testes em pequenos trechos do seu código, como funções, métodos ou classes escrito por um programador que verifica se o código atende a sua concepção e se comporta como deveria.

$ sudo apt-get install phpunit

Atualizando a versão do PEAR

$ sudo pear upgrade pear

Instalando dependências do PHPUnit

$ sudo pear channel-discover pear.phpunit.de $ sudo pear channel-discover components.ez.no $ sudo pear channel-discover pear.symfony-project.com $ sudo pear install –alldeps phpunit/PHPUnit

Agora o PHPUnit está pronto para ser usado.

Instalando e habilitando o depurador Xdebug

O Xdebug é uma extensão para ajudar no debuggin de scripts PHP, prove grande informações para debug. Para construir o XDebug de códigos-fonte, você precisará de dois módulos adicionais: PHP5-DEV e PHP-PEAR.

O PHP-PEAR é um conjunto de ferramentas que auxilia a instalação de várias extensões no php, como por exemplo: xdebug, oci8, pdo etc.

O PHP5-DEV é um pacote onde estão todas as bibliotecas usadas pelo php para compilar extensões e recompilar o próprio php. Para instalá-lo basta executar:

$ sudo apt-get install php5-dev php-pear

Agora você poderá fazer o download e instalar o XDebug.

$ sudo pecl install xdebug

Habilitando o XDebug

Instalamos o xdebug, porém ele ainda não está configurado no php. O Apache no Ubuntu tem uma estrutura toda descentralizada, isto é, existem vários arquivos de configuração, o PHP segue a mesma lógica, tendo as configurações das extensões em arquivos diferentes do php.ini.

O diretório que o php utiliza para guardar as configurações das extensões é “/etc/php5/conf.d”. Lá podemos criar um arquivo chamado xdebug.ini que conterá as seguintes linhas:

A primeira linha diz que estamos utilizando uma extensão zend e temos que passar o caminho completo da extensão.

zend_extension=/usr/lib/php5/20090626/xdebug.so
xdebug.remote_port = 9100 # porta que o xdebug responderá
xdebug.remote_handler= dbgp # valor padrão
xdebug.remote_host= localhost # endereço do host que o xdebug estará rodando
xdebug.remote_enable = On # On habilita o debugger remoto, Off desabilita

Podemos ainda adicionar o profiler, que mapeará todas as funções, objetos que estão sendo utilizadas no script. Para habilitar o profiler adicionamos mais duas linhas:

xdebug.profiler_enable = On #habilitar o profiler com On e desabilita com Off
xdebug.profiler_output_name = cachegrind.out #arquivo onde ficará guardado o mapeamento

Para poder ler um arquivo de mapeamento podemos utilizar as ferramentas WinCacheGind para Windows ou KcacheGrind para Linux.

Instalando APC

APC, sigla de Alternative PHP Cache, é um cache de opcode que pode aumentar significativamente o desempenho da sua aplicação. Além de fazer o cache de variáveis/objetos, assim como o memcached, ele tem a função de fazer cache do próprio código compilado do php.

O APC é distribuído através de um módulo PECL e pode ser facilmente instalado e habilitado através do comando abaixo:

$ sudo apt-get install php5-dev

Feito isso a instalação do pacote APC é feita com o comando:

$ sudo pecl install apc

Então basta adicionar o seguinte conteúdo no arquivo /etc/php5/apache2/php.ini :


extension=apc.so

[apc]

apc.enabled = 1

apc.shm_segments = 1

apc.shm_size = 30

apc.optimization = 0

apc.ttl = 7200

apc.user_ttl = 7200

apc.num_files_hint = 1000

apc.mmap_file_mask = /tmp/apc.XXXXXX

 

(Obs.:) As flags apc.ttl e apc.user_ttl definem o tempo em segundos que o script vai ficar em cache.

Instalando o IDE Eclipse + PDT

Faça o download do (Eclipse Classic) ao invés do Eclipse PDT, desta forma você terá a versão completa do Eclipse, que na minha opinião oferece uma interface mais aprofundada ao desenvolvedor.

Feito isso, precisaremos instalar o plugin PDT. Vá em Help > Instal New Software. E siga como mostra a imagem:

Instalando Google Chrome pelo repositório.

Uma maneira simples de instalar a última versão estável do Google Chrome direto do repositório.

Abra o terminal e digite:

$ wget -q -O – https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add – sudo sh -c ‘echo “deb http://dl.google.com/linux/chrome/deb/ stable main” >> /etc/apt/sources.list.d/google.list’

Em seguida atualize os repositórios:

$ sudo apt-get update

E finalmente instalamos o Chrome:

$ sudo apt-get install google-chrome-stable

Caso você não queira perder tempo instalando uma ferramenta de cada vez, criei um script para facilitar o seu trabalho.

Segue o link: https://github.com/jrholowka/PHP-Environment-Installer

Espero ter ajudado com este artigo.

Abraços!

Junior Holowka

Postado em Artigos, PHP - Tagged Apache, APC, Eclipse, Linux, Mysql, php, PHPUnit, Xdebug
SHARE THIS Twitter Facebook Delicious StumbleUpon E-mail
« Downloads e Wiki
  • http://www.facebook.com/suissa Suissa Corp

    Muito bom, vou usar sempre que pegar um PC limpo.

  • LACabeza

    uma dica bacana é criar um virtualhost, para ficar “mais real”…
    http://www.vivaolinux.com.br/artigo/Virtual-Host-com-Apache/

  • Pingback: Suissa

  • Pingback: Wesley Willians

  • Pingback: Derlandy Belchior

  • Pingback: Carlos Domingues

  • jonatasnona

    cara deu um erro durante a compilação do apc, o arquivo não achava a lib pcre.h aí tive que instalar a lib ‘libpcre3-dev’, aí deu tudo certo. ;)

  • Pingback: Luciano Almeida

  • http://twitter.com/uliporeggia Uli Oreggia

    Excelente! Parabens pelo post!

Newsletter

enviando...
Nome
Email

Ajude a pagar o café

Nós não cobramos pelo conhecimento aqui passado, porém se você sentir vontade de nos ajudar com o café e a hospedagem, sinta-se a vontade para doar a quantidade que quiser.

facebook

Posts Recentes

  • Configurando Ambiente de Desenvolvimento em PHP no Linux.
  • Downloads e Wiki
  • Paginação e Ordenação
  • Visualizando registros do DB
  • Excluindo registros do banco de dados com CakePHP 2.0

Categorias

  • Artigos
  • CMS
  • Destaques
  • Dicas
  • Eventos
  • Frameworks
  • Notícias
  • PHP
  • Tutoriais
  • Video Aulas

Tags

Agregação Associação automático banco de dados bibliotecas BuddyPress CakePHP Composição configuração Cookies CURL description Dicas especialização exceptions facebook final Generalização hacker cup Herança importação Joomla mapeamento mvc namescpaces objeto openinviter Orientação a objetos permalink persistência de dados php Polimorfismo regex rss segurança Sessions Sessões Smarty SPL Template title Tutorial Vídeo aula wordpress youtube

RSS

  • Posts
  • Comentários

Amigos do Portal

  •  
  • Fernando Valente
  • jQDOM
  • Blog do Suissa
  • PHP Brasil Comunidades
  • PHP MS

Listas de PHP

  • PHPMS
  • GOPHP
  • PHP Avançado
  • PHP MG
  • PHP Paraíba
  • PHP Rio
  • PHP AC
  • PHP-Brasil
  • PHP Curitiba
  • PHP-GTK Brasil
  • PHP-MySQL-BR
  • PHPBA
  • PHPeMySQL

EvoLve theme by Blogatize  •  Powered by WordPress Portal PHP
Só mais um site WordPress