Configurando PHP com Apache2 no Linux

Neste artigo veremos como criar uma configuração básica para fazer o Apache2 trabalhar junto com o PHP no Linux. Um artigo de um iniciante para iniciantes.

[ Hits: 274.595 ]

Por: Guilherme Schmidt em 09/10/2005


Instalando o Apache2



Neste artigo veremos como criar uma configuração básica para fazer o Apache2 trabalhar junto com o PHP no Linux compilando os códigos do PHP. Um artigo de um iniciante para iniciantes.

Como este é meu primeiro artigo, pretendo manter meu foco nos usuários iniciantes e mostrar como criar uma configuração básica e fazer o PHP trabalhar com o Apache2 no Linux.

Antes de mais nada precisamos baixar os fontes do Apache2 e podemos fazer isto em:
Baixando a versão 'Unix Source'.

Descompactando:

# tar zxfv httpd-2.0.54.tar.gz
ou
# tar jxfv httpd-2.0.54.tar.bz2

# cd httpd-2.0.54

Esta linha é para configurá-lo na pasta /usr/local/apache2:

# ./configure --prefix =/usr/local/apache2
# make && make install


Com isso vamos ter nosso Apache instalado, agora vamos rodar e conferir o que fizemos:

# /usr/local/apache/bin/apachectl start

Se tudo deu certo, acesse com seu navegador preferido o endereço:

http://localhost

Se o Apache mostrar uma página te dando os parabéns é sinal que fizemos corretamente.

    Próxima página

Páginas do artigo
   1. Instalando o Apache2
   2. Instalando o PHP
   3. Configurando o Apache para interpretar arquivos PHP
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Como fazer: Chroot Dosemu (Clipper no Linux)

Configurando Servidor de Nomes - DNS (Debian)

Exherbo Linux: sacrificando a cabra

Ubuntu - Alternativas ao Unity

Resolvendo o problema de gerenciamento de energia - ACPI

  
Comentários
[1] Comentário enviado por cvs em 09/10/2005 - 20:32h

Vc realmente testou esse artigo? Realmente o fez?

Porque pelo que já passei com apache, acho que não funcionaria não... Porque na configuração do apache é necessario vc colocar a opção --enable-so pra habilitar a "DSO capability" dele que é a inserção de libs dinamicas sem precisar recompilar ele todas as vezes.

Ou já vem habilitado "de fabrica"?

[2] Comentário enviado por removido em 09/10/2005 - 23:29h

Mais um artigo escrito sem base nenhuma...

[3] Comentário enviado por schmidt em 09/10/2005 - 23:39h

CVS, eu não cheguei a estudar este parâmetro na instalação do apache, como coloquei é meu primeiro artigo e queria manter o foco nos iniciantes, até mesmo porque não conheço muito de linux mas sou programador PHP e preciso saber o mínimo pra colocar pra rodar.

Articulador, peço desculpas se não o agradei.
Sua crítica bem argumentada vai servir de base para os próximos.

Abraços!

[4] Comentário enviado por zilli em 10/10/2005 - 00:29h

FUNCIONA SIM!

O artigo esta correto. O que existe são pequenos erros encontrados normalmente nos artigos técnicos. EX:
Está:
# ./make && make install
o correto seria:
# make && make install

O artigo está bem escrito e é uma leitura válida.

Guillerme, agora quanto aos comentários não esquenta. Infelizmente algumas pessoas não pensam por elas mesmas e dizem sem "base nenhuma" o que os outros falam, mesmo se o que foi falado está errado ou não foi averigado.

Parabéns pelo artigo!


[5] Comentário enviado por cvs em 10/10/2005 - 07:36h

a opção que eu disse "--enable-so" é pra fazer com o que apache aceite libs dinamicas, por exemplo, ele ta instalado, eu vou la e compilo o php e não preciso recompilar o apache pra poder usar, depois de um mes eu quero usar o mod_perl, é só compilar ele com os parametros pro apache e ai nem vou precisar compilar o apache, entendeu?
É que eu não compilo ele sem essa opção, mas se tão dizendo que funciona , então tá beleza.

[6] Comentário enviado por schmidt em 10/10/2005 - 09:58h

Zilli,
na verdade este artigo foi re-publicado, provavelmente por causa dos problemas com o vol... sinceramente, não lembro de ter colocado './' na frente do make, mas tudo bem.
E valeu pelo apoio quantos aos comentários.
Abraços!

[7] Comentário enviado por Herr_Filip em 11/10/2005 - 08:40h

parabens! muito bom o artigo.

o fato de tu colocar como instalar via fonte (logo, qualquer distro) é muito importante.
também escrevi um artigo parecido, só que incluia o PostgreSQL, e claro, recebi várias criticas.

Agora eu nao publico mais coisa nenhuma!

Prefiro deixar os "para instalar use o apt-get" publicarem seus maravilhosos artigos "esse artigo só funciona no conectiva, ou no redhat, ou no debian, etc"

mais uma vez, parabens!!

[8] Comentário enviado por Herr_Filip em 11/10/2005 - 08:46h

apenas complementando, o tal de articulador nao tem artigo nenhum ,dica nenhuma, conf nenhuma, ele somente le o site

entao vamos ignorar comentarios imbecis como o dele, vamos pegar os artigos dos amigos que se prestam a fazer isso, conversar, trocar ideias, e publicar novos artigos, mais completos, mais seguros!! nao é esse o espirito?

e nao ficar só lendo, e criticando (assim como ele fez no meu ultimo artigo).

[9] Comentário enviado por kohl em 12/10/2005 - 17:14h

Muito bom o tutorial. Consegui instalar o Apache, mas o PHP nao, ele da o seguinte msg de erro:

[root@kohl php-5.0.5]# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc/
creating cache ./config.cache
checking host system type... i686-pc-linux-gnu
checking for gcc... gcc
checking whether the C compiler (gcc ) works... yes
checking whether the C compiler (gcc ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking whether gcc and cc understand -c and -o together... yes
checking how to run the C preprocessor... gcc -E
checking for AIX... no
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking for re2c... exit 0;
checking whether ln -s works... yes
checking for gawk... gawk
checking for bison... no
checking for byacc... yes
checking for flex... lex
checking for yywrap in -ll... no
checking lex output file root... ./configure: line 2428: lex: command not found
configure: error: cannot find output from lex; giving up
[root@kohl php-5.0.5]#

oque poderia ser?

grato

[10] Comentário enviado por removido em 13/10/2005 - 17:11h

eu li o artigo e os comentários que só reclamaram, e não mostraram soluções...então corrigindo alguns detalhes...
Na instalação do apache:
#mkdir /usr/local/apache2 (o diretório tem que ser criado)
#./configure --prefix=/usr/local/apache2(no artigo havia um espaço entre prefix e o sinal de igual,isso da erro de sintaxe)
#make
#make install
==============================================
A parte da instalação do php está correta,esse poucos detalhes as vezes podem deixar o usuario frustrado,por causa de um erro simples de ser corrigido....
O artigo está muito bem feito e com certeza vai ajudar muitas pessoas,é isso ae Schmidt,quero ver mais artigos seus aqui no VOL e não se deixe levar pelos comentários ofensivos.
--slack-angel--

[11] Comentário enviado por thiago7 em 03/11/2005 - 14:55h

Guilherme, muito bom e didático seu tutorial. consegui instalar o PHP e o Apache, mas quando tento abrir um arquivo .php pelo browser, ele dá o erro 404, como se não tivesse encontrado no servidor. O que pode ser isso?
O arquivo é test.php
<?
phpinfo();
?>
e está dentro de htdocs.

[12] Comentário enviado por lemes-vilarinho em 28/03/2006 - 16:59h

Guilherme, muito bom seu tutorial. Mas quando eu abro o browser para verificar se o Apache foi instalado corretamente ele mostra um erro de conecão. Como eu faço pra corrigir esse erro. Vlw

[13] Comentário enviado por henrique.lcoelho em 09/05/2006 - 23:11h

Eu não estou conseguindo :(

root@linux01:/home/hlcoelho/Desktop/httpd-2.0.58# ./configure --prefix =/usr/local/apache2
configure: error: expected an absolute directory name for --prefix: =/usr/local/apache2
root@linux01:/home/hlcoelho/Desktop/httpd-2.0.58#

Abraços

[14] Comentário enviado por campos em 16/08/2006 - 00:34h

Consegui instalar perfeitamente seguindo o tutorial.

Parabéns.

[15] Comentário enviado por titasilveira em 06/12/2006 - 15:51h

Pessoal, estou iniciando em linux, e tenho o Kurumin 5.1 no PC. Estou interessao em me aventurar em PHP em Linux. Baixei estes arquivos que o Ximiti falou, passei um calvário pra poder pôr eles na pasta certa e na hora de descompactar não rola...Acontece que os arquivos que baixei não são httpd-2.0.54.tar.gz, como no tutorial, e sim httpd-2.2.3.tar.tar...aí dá um erro dizendo que não é um arquivo tz válido...como faço pra descompactar isso?

[16] Comentário enviado por titasilveira em 07/12/2006 - 13:52h

bom...chutei e renomeei o arquivo tirando a terminação .tar e pondo .gz. Funcionou! Nem acreditei! Mas na hora de comparar, a minha árvore de diretórios ficou assim: /usr/local/apache2/httpd-2.2.3

E na hora de rodar o apache, o caminho que vc passou foi
/usr/local/apache/bin/apachectl start , mas no meu sistema o arquivo apachectl ficou no caminho
/usr/local/apache2/httpd-2.2.3/support

Na linha /usr/local/apache/bin/apachectl start, está correta? Eu tenho que criar outra pasta apache? com a bin?
O que eu fiz de errado??? Por favor, me digam...

[17] Comentário enviado por greifell em 14/12/2006 - 20:52h

Cara parabéns pelo artigo... deu quase tudo certo, mas estou tendo problema ao startar o apache com o seguinte erro: Syntax error on line 233 of /usr/local/apache2/conf/httpd.conf:
Cannot load /usr/local/apache2/modules/libphp5.so into server: /usr/local/apache2/modules/libphp5.so: cannot open shared object file: No such file or directory

O meu httpd.conf nao tinha essa linha e eu adicionei ela...
LoadModule php5_module modules/libphp5.so

Alguem saberia como resolver esse problema???

[18] Comentário enviado por lazarodm em 20/05/2007 - 17:05h

bom artigo, suficiente para fazer a instalação na primeira tentativa...vlw

[19] Comentário enviado por fgorrese em 31/07/2007 - 17:53h

Caso apresente erro de Compilação
ex. nao pode criar executavel bla bla bla ...

instale glibc-devel
se for kubunto / Debian / etc ...
usem esse nome libc6-dev

[20] Comentário enviado por daniel.capua em 08/02/2010 - 15:45h

tentei e aparentemente funciona bem, só faltou rodar.
Depois de

# /usr/local/apache/bin/apachectl start

me retorna um erro como a seguir:

/usr/local/apache2/bin$ ./apachectl start
httpd: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1 for ServerName
(13)Permission denied: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs

[21] Comentário enviado por josyrangel em 02/09/2010 - 21:17h

Oi,
O artigo me ajudou muito no processo de instalação, por tanto creio que é válido, porém encontrei dificuldades já mencionadas nas correções, parabéns...

[22] Comentário enviado por fhellery em 15/12/2010 - 15:05h

Oi sou novato no linux.
Depois de apanhar um pouco deu quase tudo certo,
mas quando rodo a linha
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/etc/
ocorre o seguinte erro
configure: error: xml2-config not found. Please check your libxml2 installation.

Agradeço a ajuda

ubuntu 10.04
apache httpd-2.2.17
php 5.2.15

[23] Comentário enviado por akamaru em 09/03/2011 - 22:24h

Oi fhellery...
Para resolver o seu problema você precisa instalar as bibliotecas libxml2 e libxml2-devel.
Se continuar com dúvida estou a disposição

[24] Comentário enviado por RenatoSantoss em 13/06/2011 - 19:58h

muito mais facil. ;)

http://www.apachefriends.org/pt_br/xampp-linux.html

[25] Comentário enviado por fmj1988 em 22/07/2011 - 12:54h

Durante a instalacao nao concegui copiar o arquivo php.ini com :
# cp php.ini-dist /etc/php.ini

pois nao existe o arquivo em questao somente os:
php.ini-development e php.ini-production
como eu faço???


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts