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.
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.
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.
[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".
[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...
[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.
[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...
[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.
[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!!
[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.
[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.
[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.
[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?
[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
[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....