PHP5 + Apache2 no Ubuntu 7.04, com suporte ao MySQL e SQL Server

Recentemente tive a necessidade de configurar um ambiente de desenvolvimento WEB usando PHP 5, Apache 2 e SQL Server. Como sou iniciante no mundo Linux, optei por usar o Ubuntu 7.04 Feisty Fawn pela sua facilidade de uso, reconhecimento de hardware e pelo suporte ao apt-get, herdado do Debian. Neste artigo pretendo passar de forma clara a experiência que tive ao configurar este ambiente.

[ Hits: 89.398 ]

Por: Thiago Coelho Lima em 27/05/2007


Introdução



Recentemente tive a necessidade de configurar um ambiente de desenvolvimento WEB usando PHP 5, Apache 2 e SQL Server.

Como sou iniciante no mundo Linux optei por usar o Ubuntu 7.04 Feisty Fawn, pela sua facilidade de uso, reconhecimento de hardware e pelo apt-get, herdado do Debian.

A princípio tudo parecia muito simples, bastava executar o comando "sudo apt-get install apache2 php5" e pronto, estaria tudo funcionando. Mas devido algumas restrições arquiteturais, definidas para o projeto, tive que baixar os fontes e botar a mão na massa para configurar e compilar o PHP e o Apache, versões 5.2.1 e 2.2.4 respectivamente.

Neste artigo tentarei passar da melhor forma possível a experiência que tive em configurar este ambiente.

1º) Fazer o download do Apache 2.2.4 em http://httpd.apache.org/
2º) Fazer o download do PHP 5.2.1 em http://www.php.net/

O primeiro problema que tive ao tentar compilar o PHP e o Apache foi a ausência de algumas bibliotecas necessárias para compilá-los, ocasionando como conseqüência o famoso erro "C compiler cannot create executables". Então vamos começar pela instalação delas.

$ sudo apt-get install libc6-dev (necessária para o compilador C/C++)
$ sudo apt-get install g++ (necessária para o compilador C/C++)
$ sudo apt-get install flex (necessária para compilar o PHP)
$ sudo apt-get install bison (necessária para compilar o PHP)
$ sudo apt-get install libxml2-dev (necessária para compilar o PHP)
$ sudo apt-get install freetds-dev (necessária para o suporte ao SQL Server)
$ sudo apt-get install libmysqlclient15-dev (necessária para o suporte ao MySQL)

É importante salientar que além dessas bibliotecas o apt-get irá instalar também suas dependências.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando o Apache e o PHP
Outros artigos deste autor

MySQL Workbench no Slackware 14.0

Leitura recomendada

Instalando o Nagios Core no Suse Linux Enterprise Server

Window Maker 0.95.4 no Debian Testing - Instalação, configuração e dicas

Mini-manual do Fluxbox no Zenwalk

Caracteres especiais no teclado Linux: como adaptar às necessidades do escritor

Montagem de Cluster Beowulf

  
Comentários
[1] Comentário enviado por fernando_lima em 27/05/2007 - 23:19h

Ótimo artigo!! Funcionou de primeira
Valew

[2] Comentário enviado por condector em 28/05/2007 - 01:31h

E ai Thiago.. também por aqui rapaiz?? Ou, só me tira uma dúvida.. onde está a parte do SQL Server??? só vi a parte do MySQL.

Parabéns pelo artigo.

[3] Comentário enviado por thiagocoelho em 28/05/2007 - 18:25h

Fala Brivaldo, blz? Seguinte, para dar suporte ao SQL Server, foi necessário a instalação da lib "freetds-dev", citada no começo do artigo, e ao configurar o PHP, acrescentar a opção: "--with-mssql".

Abraço,
Thiago

[4] Comentário enviado por cacjorge em 04/06/2007 - 20:39h

olá, é o seguinte:
eu fiz tudo isso ae
ai eu digito no browser http://localhost
ele lista certo o diretorio e tal... mas qnd tento abrir um .php, ele pede pra fazer download do arquivo!
o q fazer?

[5] Comentário enviado por diogoleter em 05/06/2007 - 09:30h

No meu também ocorreu o mesmo problema que o citado pelo membro "cacjorge". Sei que o apache não localizou o PHP, mas e agora, qual seria o procedimento...

att,

[6] Comentário enviado por roandrad em 13/06/2007 - 12:44h

O meu deu o mesmo problema do cacjorge. O que tem que ser feito?

[7] Comentário enviado por maurothiagobr em 23/06/2007 - 14:36h

O meu deu o mesmo problema!
Coisa de loko!

postando novamente.....
Agora funcou, apenas mudei a tag short_open_tag = Off

no arquivo /usr/local/lib/php.ini
e restarei o apache!
Espero ter ajudado!

[8] Comentário enviado por thiagocoelho em 28/06/2007 - 16:31h

Pessoal, infelizmente ou felizmente não tive este problema em nenhuma das vezes que instalei este ambiente. Por isso não sei como ajudá-los.
Se alguém conseguiu solucionar o problema seguindo as orientações do "maurothiagobr", por favor, reporte a experiência aqui para ajudarmos outros membros da comunidade.

Abraço,
Thiago.

[9] Comentário enviado por removido em 07/07/2007 - 06:04h

Bom, segui exatamente o artigo e reiniciei o apache (restart ao invés de stop e start) e o Firefox tentou fazer o download do .php, aí eu dei um stop e start e foi numa boa.

(O esquema do short_open_tag resolveria outro problema que seria no caso de tentar rodar um arquivo com as tags <? phpinfo(); ?> ou invés de <?php phpinfo(); ?> o apache acaba "escrevendo" na tela quando este parâmetro está desligado e os arquivos estao usando as tags <? ao invés de <?php )

[10] Comentário enviado por alyson_fc em 19/07/2007 - 12:30h

no meu caso nao resolveu alterei a tag : short_open_tag = Off
e ele continua querendo fazer download, o que sera? uso o fedora core 6
apache2 e php5, a tag estava on coloquei off e reiniciei a maquina...

ainda nada alguem tem mais alguma sugestao?

[11] Comentário enviado por edlugo em 22/07/2007 - 00:22h

Olá sou um calouro aki! Segui os passos indicados nesse artigo e deu certo.
O problema é que tentei instalar o Joomla e assim que é feito a verificação da pré-instalação indica que não há suporte à compressão zlib.

Alguém sabe como resolvo isso?

[12] Comentário enviado por shido em 25/07/2007 - 01:47h

Olá, antes de tudo parabéns pelo tuto!!!
Sou completamente noob em linux.. e nao consegui usar o comando tar -zvxf httpd-2.2.4.tar.gz, pois apareceu o seguinte:

tar: httpd-2.2.4.tar.gz: Não é possível open: Arquivo ou diretório inexistente
tar: Erro não é recuperável: saindo agora
tar: Child returned status 2
tar: Saída por erro atrasada pelos erros anteriores

fiz o download do arquivo e o mesmo se encontra em meu desktop!!

Valeuuu

[13] Comentário enviado por thiagocoelho em 25/07/2007 - 18:20h

Olá shido, ao executar o comando verifique se você está no diretório correto, no seu caso desktop.

[]'s
Thiago.

[14] Comentário enviado por duckling em 28/07/2007 - 20:45h

Olá pessoal.

Eu consegui resolver parcialmente esse problema (fazer o download do arquivo, ao invés de exibir as informações do sistema), descomentando a linha " Include /etc/httpd/mod_php.conf " no httpd.conf.

Bom, observando o error.log do apache, algumas bibliotecas não puderam ser carregadas porque não foram encontradas (por isso o parcialmente no paragrafo anterior). Trabalho no momento para corrigir os problemas.

Estou usando:
Slackware 12
Apache 2.2.4
Php 5.2.3

Em seguinda devo configurar o Mysql 5.0.37.

Raul.

[15] Comentário enviado por duckling em 28/07/2007 - 21:00h

Só para concluir, as bibliotecas que faltavam eram as seguintes:

libX11
libXpm
lixcd
libXau
libXdmcp

Todas elas são encontradas no disco 2 do slackware 12, em .../slackware/x/

Então é isso, Apache 2.2.4 e PHP 5.2.3 rodando no Slackware 12.

Rumo ao Mysql 5.0.37.

Até breve.
Raul.

[16] Comentário enviado por fabriciocscte em 05/08/2007 - 13:13h

Se vc não sabe o que esta fazendo não escreva para o viva o linux para não abaixar-mos o nivel do site.

[17] Comentário enviado por t3rcio em 08/08/2007 - 22:23h

Olá Galera,
Fiz a configuração seguindo todos os passos do artigo. Entretanto qdo efetuo a tentativa de abrir o arquivo info.php ( que contém o scritp <?php php.info() ?> ) o browser tenta ( igual ao que aconteceu aos colegas que já comentaram ) fazer o download do arquivo.
Verifiquei o httpd.conf e tudo está normal.O php.ini também.
Alguma sugestão de como lidar com esse problema?

[18] Comentário enviado por t3rcio em 09/08/2007 - 23:34h

Olá de novo Galera VivaoLinux... ;-)
Voltei pra falar como resolvi o problema do browser tentar baixar o arquivo php ao invés de interpretá-lo:
O problema era o módulo libphp5.so que não havia sido carregado na compilação do sistema. Acredito que tenha sido o arquivo "tar.gz" que não continha a biblioteca necessária.
Baixei um outro arquivo para compilação em www.php.net. Compilei e tudo certo ;-)
No "httpd.conf", é nessário acrescentar a seguinte linha:
LoadModule php5_module modules/libphp5.so - na seção LoadModules. Depois é resetar o Apache e voilá! Tudo ok. Espero ter ajudado.

[19] Comentário enviado por balani em 13/08/2007 - 12:03h

Eu tive o mesmo problema do browser tentando baixar o arquivo .php, mais já resolvi, acrescentando a linha "LoadModule php5_module modules/libphp5.so - na seção LoadModules" igual ao t3rcio fez.

[20] Comentário enviado por felipespsousa em 05/09/2007 - 17:07h

não consegui resolver...continua reclamando da libphp5.so
alguém pode me ajudar ?

[21] Comentário enviado por duckling em 05/09/2007 - 17:21h

Opa.
Felipe. Já tentou a solução que eu descrevi no dia 28 de Julho as 20:45h ?

Desculpe felipe. Foi desatenção minha.
Não acredito que a minha sugestão de solução sirva pra você.
Desculpe...

[22] Comentário enviado por felipespsousa em 05/09/2007 - 17:30h

Fala galera descobri:

na verdade a linha ./configure --prefix=/usr/local/php5 --with- apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/include/mysql --with-mssql tem um espaço após o primeiro --with- e deveria ser assim --with-apxs2.

espero te ajudado

[23] Comentário enviado por wregis em 15/09/2007 - 22:47h

Quando eu dou o comando ./configure --prefix=/usr/local/php5...
Parece que vai dar tudo certo, mas sempre vem no final uma mensagem mais ou menos assim:
"Configuring extensions
checking whether to enable LIBXML support.. yes
chacking libxml2 install dir... no
checking for xml2.config path...
configure: error: xml2-config not found Please check your libxml2 installation"
Eu uso o Ubuntu pra AMD64 bits, e no meu cd não veio com essas bibliotecas todas, mas eu baixei o libxml2 e instalei, e o problema persiste. O que pode ser?

[24] Comentário enviado por oalexandrino em 13/11/2007 - 19:27h

CARA,

Parabéns!

Muito bom o artigo!

Só me diz uma coisa...daria pra fazer isso via apt-get não? Ja que vc o usou pra instalar as libs pra compilacao.

fallow

[25] Comentário enviado por intragov em 27/11/2007 - 16:26h

de 1 *** quebro mo galhão valew .......

[26] Comentário enviado por jpsanet em 07/12/2007 - 16:03h

Vi seu artigo e achei bem interessante...
Estou passando por uma situação similar a relatada nesse artigo.
Tenho um servidor (Debian 4) LAMP (c/ Mysql 5 + php 5) instalado e configurado via apt-get e agora terei que instalar um suporte a consultas em um servidor Windows com MS SQL Server 2005.
Qual seria a melhor solução? Caso eu instale o freetds, isso afetaria minha configuração do MySQL, pois precisarei usar as duas conexões? O que eu teria q mudar na configuração do php 5?
JP

[27] Comentário enviado por xdanilo em 19/12/2007 - 13:24h

Somente o 1o sudo funcionou aqui =/

Alguma dica?

[28] Comentário enviado por soplanilhas em 02/02/2008 - 15:17h

Muito bom mesmo o seu artigo... Parabéns!

[29] Comentário enviado por crazyeyes em 16/04/2008 - 10:16h

opa.. td tranquilo?
cara, fiz td isso só q com a versão apache-2.2.8, e deu erro na hora de testar o localhost/phpinfo.php .

Oque posso fazer?
devo dsinstalar o apache q tenho e instalar o 2.2.4?

abraço?


o erro q dá é esse:

Not Found

The requested URL /phpinfo.php was not found on this server.
Apache/2.2.4 (Ubuntu) Server at localhost Port 80

[30] Comentário enviado por CH3RN0B0Y em 23/06/2008 - 14:21h

cara muito bom mesmo, muito artigos eu li e não deu certo, mas por incrivel q pareçao seu deu =]

[31] Comentário enviado por batousai em 15/07/2008 - 19:33h

muito bom o artigo, de inicio tive alguns problemas, mas baixei as versões do apache e do php .tar.bz2 e foi tudo certo...

funcionando httpd-2.2.9 e php-5.2.6 no ubuntu 8.04

[32] Comentário enviado por leonardonobre em 05/04/2010 - 21:04h

No meu ele não criou o arquivo apachectl no bin da instalação do apache... alguem tem alguma dica?! A instalação, aparentemente rolou tudo certo, sem nenhuma mensagem de erro, porém quando vou no usr/local/apache2/bin não encontro os arquivos de configuração, só esta lá o apr-1-config!!! Não encontro o httpd.conf tb....

Abs,
ótimo artigo..


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts