Tutorial: Instalando o Apache 2.2.21 no Ubuntu Server 11.10

Neste tutorial, vou compartilhar o procedimento que uso para instalar o Apache 2.2.21 em um servidor Ubuntu 11.10 (32bits) a partir do código fonte. Para mais informações, leia a documentação oficial em http://httpd.apache.org/docs/2.2/install.html.

Passo 1: Preparação

Confirme a versão do seu servidor Ubuntu, bem como a arquitetura:

$ less /etc/lsb-release

A saída deve ser algo como:

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=11.10
DISTRIB_CODENAME=oneiric
DISTRIB_DESCRIPTION="Ubuntu 11.10"

Para verificar a arquitetura:

$ uname -i

A saída do comando deve ser algo como:

i386

Para terminar este passo, crie dois diretórios sob o seu diretório home, para armazenar os pacotes de instalação e o código-fonte a ser compilado. Eu sempre utilizo estes diretórios para armazenar os pacotes de download e os arquivos de código-fonte.

bruno@ubuntu:~$ pwd
/home/bruno
bruno@ubuntu:~$ mkdir downloads softwares
bruno@ubuntu:~$ ls -ltr
total 8
drwxrwxr-x 2 bruno bruno 4096 2011-10-14 09:44 softwares
drwxrwxr-x 2 bruno bruno 4096 2011-10-14 09:44 downloads
bruno@ubuntu:~$

Passo 2: Instalação do make, gcc e autoconf

Para compilar qualquer software a partir do código-fonte, é necessário um conjunto específico de ferramentas. Antes de prosseguir com a instalação, instale os seguintes pacotes, usando o apt-get:

$ sudo apt-get install gcc
$ sudo apt-get install g++
$ sudo apt-get install make
$ sudo apt-get install autoconf

Passo 3: Download do pacote de instalação

Faça o download do pacote de instalação na página http://httpd.apache.org/download.cgi. Escolha o pacote Unix Source, arquivo httpd-2.2.21.tar.gz. Após fazer o download, copie este arquivo para o diretório /root/downloads. Se preferir, você pode fazer o download direto do servidor, usando o wget:

$ pwd
/home/bruno/downloads
$ wget http://ftp.unicamp.br/pub/apache//httpd/httpd-2.2.21.tar.gz

Se você for bem paranóico, pode verificar a integridade do pacote de download usando o md5sum:

$ md5sum httpd-2.2.21.tar.gz
b24ca6db942a4f8e57c357e5e3058d31 *httpd-2.2.21.tar.gz

Altere o diretório de trabalho para o diretório softwares e descompacte o pacote de instalação:

$ pwd
/home/bruno
$ cd softwares
$ tar --extract --gzip --verbose --file ../downloads/httpd-2.2.21.tar.gz

Passo 4: Antes de configurar…

Antes de configurar a instalação do Apache, é necessário tomar algumas decisões importantes, como qual será o modelo de multi-processamento e quais módulos devem ser carregados. O modelo de multi-processamento define como o Apache irá se comportar em relação à criação de processos-filho e distribuição das requisições entre estes processos. Para um servidor de desenvolvimento, essa decisão não é tão importante, mas em ambientes de produção, pode ter impacto direto no sucesso ou fracasso deste servidor. Para mais informações sobre os modelos de multi-processamento do Apache, visite http://httpd.apache.org/docs/2.2/mpm.html.

Neste tutorial, vou escolher o módulo prefork e vou carregar três módulos adicionais:

  • mod_info: Este módulo oferece um Location (/server-info) que apresenta informações detalhadas sobre a instalação do Apache e é recomendada para ambientes de desenvolvimento e produção (com controle de acesso)
  • mod_status: Este módulo também oferece um Location (/server-status) que apresenta informações sobre o status do Apache, incluindo quais os módulos carregados e, o mais legal na minha opinião, é a possibilidade de ver um mapa dos processos atuais, bem como o que cada um está fazendo (status)
  • mod_rewrite: Este módulo é muito útil para criar regras de re-escrita de URL, que podem ser de muita utilidade na administração deste servidor

Passo 5: Configuração

Executar os comandos abaixo, na ordem especificada. Este comando verificará se o ambiente possui todas as bibliotecas e ferramentas necessárias, de acordo com os parâmetros de configuração:

$ ./configure --prefix=/usr/local/httpd-2.2.1 --with-mpm=prefork --enable-info=shared --enable-status=shared --enable-rewrite=shared

O comando acima configura a instalação para o diretório /usr/local/httpd-2.2.21, define a utilização do módulo de multi-processamento como prefork e habilita o carregamento de três módulos adicionais. O shared nas opções acima define que estes módulos devem ser instalados como objetos compartilhados (Shared Objects). Estes objetos serão criados como arquivos .so no diretório modules sob o diretório de instalação do Apache. Instalar módulos como objetos compartilhados permite carregar estes módulos dinamicante.

Passo 6: Compilação

Executar os comandos abaixo, na ordem especificada:

$ sudo make

Passo 7: Instalação

Executar os comandos abaixo, na ordem especificada:

$ sudo make install

Pronto, a instalação do Apache 2.2.21 foi feita no diretório /usr/local/httpd-2.2.21.

Passo 8: Pós-instalação

Para finalizar, falta apenas fazer algumas alterações no arquivo de configuração e inicializar o Apache através do script apachectl.

Antes, crie um link simbólico para o diretório de instalação:

$ sudo ln --symbolic /usr/local/httpd-2.2.21 /usr/local/httpd

Em seguida, edite o arquivo de configuração localizado em /usr/local/httpd/conf/httpd.conf, removendo os comentários do início das linhas abaixo – os comentários sobre as linhas são bem claros.

Linha 379:

# Server-pool management (MPM specific)
Include conf/extra/httpd-mpm.conf

Linha 393:

# Real-time info on requests and configuration
Include conf/extra/httpd-info.conf

Linha 405:

# Various default settings
Include conf/extra/httpd-default.conf

Agora só falta iniciar o Apache e correr para o abraço… rsrs

$ pwd
/usr/local/httpd
$ sudo bin/apachectl start

Conclusão

Neste artigo, compartilhei o meu procedimento para a instalação do servidor HTTP Apache 2.2.21 em um servidor Ubuntu 11.10 a partir do código-fonte. Esta instalação utiliza o módulo de multi-processamento prefork e carrega três módulos como objetos compartilhados.

Dúvidas, críticas e/ou sugestões, é só comentar.

2 thoughts on “Tutorial: Instalando o Apache 2.2.21 no Ubuntu Server 11.10

    • Boa noite… muito obrigado pelo comentário…

      Esse procedimento foi testado apenas no Ubuntu 32 bits, mas eu acredito que funcione de forma semelhante para 64 bits, pode tentar que vai. Quanto a utilizar os pacotes do Ubuntu, o apache2 neste caso, você terá de aguardar o ciclo de homologação das versões por parte do Ubuntu, que pode demorar algumas semanas ou até mesmo meses. Por exemplo, se o Apache 3 saísse hoje, você teria de aguardar até que eles homologuem esta versão, criem o novo pacote, resolvam as dependências, etc. Isso pode ser bom, pois você garante que está instalando um software testado por eles, mas também pode ser ruim, caso você precise de configurações específicas. Como sempre, depende das suas necessidades.

      Espero ter ajudado.

      Obrigado.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Sair / Alterar )

Imagem do Twitter

You are commenting using your Twitter account. Sair / Alterar )

Foto do Facebook

You are commenting using your Facebook account. Sair / Alterar )

Connecting to %s