Servidor Apache Profissional

O público alvo aqui direcionado são aqueles que querem compilar uma versão estável do servidor Apache, com suporte a PHP + a biblioteca gráfica GD, acesso ao banco de dados MySQL com o módulo de SSL para maior segurança, o módulo Perl para executar scripts entre outros.

[ Hits: 65.806 ]

Por: Gabriel Ortiz Lour em 12/01/2005


IMAP, libmcrypt e mhash, expat e Sablotron, freetype2 e GD



Configuração do Apache


Para a correta instalação do PHP ele precisa dos sources do Apache, que já foram extraídos no início do guia, mas estes sources precisam também estar previamente configurados para o PHP. O script de configuração será alterado depois, quando for a vez de instalar o Apache, por enquanto só uma configuração básica é necessária.

# cd /usr/local/src
# cd apache_1.3.3
# ./configure --prefix=/www


Configuração do IMAP para o PHP


Para que as funções de IMAP do PHP funcionem corretamente, ele precisa de alguns arquivos de cabeçalho do c-client, que é gerado pelo IMAP que baixamos. Nós vamos precisar copiar alguns arquivos após a compilação do IMAP para os diretórios padrão /usr/include e /usr/lib para que o PHP possa encontrá-los e instalar sem terminar o script de configuração, pois se algum arquivo necessário não é encontrado, a compilação PHP para com o erro "Cannot find rfc922.h. Please check your IMAP installation [Impossível encontrar rfc822.h. Por favor cheque a sua instalação do IMAP]".

# cd /usr/local/src
# cd imap-2004a
# make slx SPECIALS="SSLDIR=/usr SSLINCLUDE=/usr/include SLLIB=/usr/lib"
# cd c-client
# cp c-client.a /usr/lib
# cp rfc822.h mail.h linkage.h /usr/include


Se você tem diretórios diferentes na sua versão do OpenSSL, mude o comando "make" acima de acordo.

Instalando libmcrypt e mhash


libmcrypt é uma biblioteca de encriptação que você provavelmente vai achar muito útil no PHP. Ela suporta vários algoritmos diferentes e é usada por toda a Internet. mhash é uma biblioteca que provê uma interface com um grande número de algoritmos de hash. Um exemplo comum de algoritmo hash é o MD5, que cria um número a partir de um arquivo, para posterior verificação de autenticidade das cópias deste arquivo.

Instale o libmcrypt antes do mhash:

# cd /usr/local/src
# cd libmcrypt-2.5.7
# ./configure --prefix=/usr
# make
# make install


Agora instale o mhash:

# cd /usr/local/src
# cd mhash-0.9.1
# ./configure --prefix=/usr
# make
# make install


Pronto, agora as duas bibliotecas estão instaladas e operacionais.

Instalando Expat e Sablotron


Sablotron é um rápido processador de XML, que transforma estes documentos usando a biblioteca XSLT. Ele provê este mecanismo de XSLT para o PHP. Você vai precisar do Sablotron se você usa ou pretende usar XML. Ele faz uso do Expat XML parser, que precisamos instalar primeiro.

# cd /usr/local/src
# cd expat-1.95.7
# ./configure --prefix=/usr
# make
# make install


Agora o Sablotron.

# cd /usr/local/src
# cd Sablot-1.0.1
# ./configure --prefix=/usr
# make
# make install


O Expat e o Sablotron estão agora devidamente instalados e prontos para processar arquivos XML.

Instalando freetype2 e GD


As bibliotecas zlib, libjpeg e libpng provavelmente já devem estar instaladas no seu sistema, se não estiverem procure no CD da sua distribuição que com certeza estarão lá. O próximo passo é instalar o freetype2, que é necessário para o GD.

# cd/usr/local/src
# cd freetype-2.0.4
# make setup
# make
# make install
# ln -s /usr/local/include/freetype2/freetype /usr/local/include/freetype


Agora o GD:

# cd/usr/local/src
# cd gd-2.0.1
# make clean
# make install


Mais um passo ainda é necessário para a criação da biblioteca do GD: a libgd.a, que vai ser incorporada ao PHP. Entre no diretório /usr/local/src/gd-2.0.1 e edite o arquivo Makefile. Você pode usar qualquer editor de texto.

DICA: pra quem não está acostumado com o vi: dentro do vi você deve teclar 'i' para poder editar o texto. Após feitas as modificações, tecle 'ESC' para voltar ao modo de comando e digite ':wq', para salvar as alterações e sair. Se você quiser sair sem salvar, digite ':q!' após o 'ESC'.

# cd/usr/local/src
# cd gd-2.0.1
# vi Makefile


Agora dentro do arquivo Makefile procure a linha que começa com LIBS, modificando-a para esta linha:

LIBS=libgd.a -lpng -lz -ljpeg -lfreetype -lm

E em seguida digite os seguintes comandos, ainda dentro do diretório do GD (gd-2.0.1), para compilar a biblioteca e copiá-la para o lugar certo:

# make libgd.a
# cp -f /local/usr/src/gd-2.0.1/libgd.a /usr/local/lib/
# cp -f /usr/local/src/gd-2.0.1/gd.h /usr/local/include/


Pronto, a biblioteca GD está instalada e pronta para ser usada pelo PHP.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Downloads necessários
   3. MySQL, mod_perl e mod_SSL
   4. IMAP, libmcrypt e mhash, expat e Sablotron, freetype2 e GD
   5. Configurando, compilando e instalando o PHP
   6. Último passo: o Apache
Outros artigos deste autor

Formulários HTML: Problemas com campos desabilitados?

Instalando drivers para placas de vídeo SiS

Leitura recomendada

Apache 2.2 - Introdução ao módulo mod_rewrite

Google Chrome no Linux Mint

OpenGoo - Seu escritório nas nuvens Online-Ontime-Fulltime

Site for IE: Até quando?

Instalando e configurando um servidor DNS (Bind)

  
Comentários
[1] Comentário enviado por removido em 12/01/2005 - 15:55h

pow, prbens pelo artigo cara..
abraços ;]

[2] Comentário enviado por y2h4ck em 12/01/2005 - 21:03h

Legal o artigo.

Só para reforçar, a questão de aumentar segurança usando SSL é altamente relativo, eu diria que se não for utilizar alguma aplicação séria com SSL é bem melhor desativalo devido ao grande numero de vulnerabilidades no mod_ssl e no openssl.
Não se deve utilizar versões inferiores a OpenSSL 0.9.7d.

Valew galera!

[3] Comentário enviado por removido em 14/01/2005 - 06:40h

acabei tendo erros no install DBD::mysql (e nem com o force adiantou)

/usr/lib/gcc-lib/i486-slackware-linux/3.3.4/../../../../i486-slackware-linux/bin/ld: cannot find -lmysqlclient
collect2: ld returned 1 exit status
chmod 755 blib/arch/auto/DBD/mysql/mysql.so
chmod: cannot access `blib/arch/auto/DBD/mysql/mysql.so': No such file or directory
make: *** [blib/arch/auto/DBD/mysql/mysql.so] Error 1

oq poderia estar errado?

[4] Comentário enviado por fernandoamador em 16/01/2005 - 05:32h

Ótimo artigo.

[5] Comentário enviado por removido em 12/10/2005 - 02:23h

Muito bom o artigo, acabei de isntalar aqui com algumas modificações.

[6] Comentário enviado por removido em 12/10/2005 - 03:36h

Ah, outras coisa, depois que terminar a instalação precisa adicionar no httpd.conf essa linha:

AddType application/x-httpd-php .php

E também em:
DirectoryIndex index.html
Colocar na frente de index.html index.php index.htm index.cgi index.phps

[7] Comentário enviado por roanfranklin em 08/11/2006 - 08:57h

Muito Show... Parabéns

[8] Comentário enviado por elbriga em 06/04/2007 - 23:00h

Gostaria de adicionar que esta artigo já esta bastante antigo, desatualizado.

O servidor apache2 já é considerado altamente estável e para uso em produção.

Gabriel Ortiz Lour

[9] Comentário enviado por Ruy_Go em 16/04/2007 - 00:23h

Poderia disponibilizar uma versao deste artigo mais atualizada então amigo????
Abração!

[10] Comentário enviado por franklin.r em 18/12/2007 - 17:17h

Novo link para download do Sablotron: http://download-1.gingerall.cz/download/sablot/Sablot-1.0.3.tar.gz

[11] Comentário enviado por marcelocristiano em 29/07/2008 - 11:46h

como faço para instalar o apache no mandrke


Contribuir com comentário