Sistema Básico

Instalando o Apache 2.2, compatível com versão VC9 do PHP, no Windows 7

Postado em julho 2, 2011

Na busca de informação, li muito sobre a instalação do binário win32 do Apache que possibilita a utilização do PHP win32 em sistemas Windows, porém o que é dito, inclusive no próprio site oficial do PHP, é que para utilizar o PHP como módulo do Apache provenientes do site oficial do Apache (apache.org), deve-se utilizar distribuições do PHP VC6 e que se a ideia fosse utilizar o distribuições VC9 do PHP , deveria ser unicamente com servidores IIS, mas este tutorial ensina com extrema facilidade a ignorar essa 'impossibilidade' e ainda assim obter sucesso na instalação, mantendo todas as funcionalidades.

Para  utilizar o PHP VC9 com o Apache, deve instalar um binário confiável do Apache distribuído através do do site apachelounge.com.

Sobre o Apache Lounge:
Binário não oficial para Windows. Esta versão conta com melhorias de desempenho e estabilidade sobre a distribuição oficial do Apache, embora eu ainda não tenha percebido uma diferença significativa. É fornecido como um arquivo ZIP e sua instalação se dá manualmente.
Fonte: Tradução da explicação de Craig Buckler

Acompanhe esta etapa do tutorial para descobrir como instalar esse binário do Apache e ter a possibilidade de instalar a versão VC9 do PHP 5.3.x, mas este tutorial instalando o PHP 5.3.x é na próxima etapa que poderá acompanhar na sequência.  :)

Enfim...

1 -  Acesse o site apachelounge.com e clique na opção Download do menu principal, logo a esquerda, conforme a imagem abaixo:

instalando-apache-lounge-php

2 - Escolha a distribuição do Apache que aparece no topo, conforme a imagem abaixo:

instalando-apache-lounge-php-02

Você também deve fazer o download e instalar o Windows C++ runtime da Microsoft.com.
Talvez você já tenha instalado o Windows C++, mas não fará mal algum se por acaso não souber e instalar novamente.
Dica: Lembre-se sempre de verificar com um bom antivírus os arquivos que baixa da internet.

3 - Vamos extrair os arquivos para C:\apache2, para isso, descompacte os arquivos conforme a imagem abaixo.

instalando-apache-lounge-php-03

Você pode extrair em qualquer diretório de sua escolha, desde que não esqueça de alterar devidamente o PATH do servidor que já vem por padrão definido como c:/apache2 no arquivo de configuração do Apache. Vamos falar sobre esse arquivo logo em seguida.

Pronto o Apache está 'instalado', porém é necessário algumas configurações manuais para que seja funcional, de outra forma é apenas uma pasta com seus arquivos.

4- Agora vamos configurar o Apache para que esteja apto a suprir nossas necessidades básicas para o que ainda esta por vir :)
O Apache é configurado através do arquivo texto localizado em C:\Apache2\conf\ httpd.conf. Abra este arquivo com o bloco de notas.

Perceba que todas as configurações de PATH (caminho) de arquivo é usado uma '/' normal ao invés da barra invertida utilizada no Windows. Se você instalou o Apache em qualquer lugar diferente de C:\Apache2, é o melhor momento para procurar e substituir no arquivo httpd.conf, todas as referências à C:/Apache2.

Algumas configurações necessárias e básicas:

Role a barra de rolagem com calma, procurando as referências citadas mais abaixo e alterando de acordo com o que é informado.

- Defina que todas as requisições sejam enviadas para porta 80

Listen 80

- Defina o nome do servidor (Server Name)

ServerName localhost

- Alterando o diretório raíz de suas páginas

Por padrão, os arquivos que podem ser vistos no navegador através do servidor Apache, devem estar localizados dentro da pasta htdocs que por sua vez está dentro da pasta do Apache. Eu recomendo usar uma outra pasta em uma outra unidade ou partição, pois facilita na execução de backups e re-instalações. Para exemplificar essa alteração, vamos criar uma pasta chamada D:\web e fazer a alteração no httpd.conf conforme instrução abaixo:

DocumentRoot "D:/web"

Um pouco mais abaixo você encontra <Directory> e logo mais encontra outra referência para <Directory C:/Apache2/htdocs>, nessa segunda referência apenas, substitua esse caminho para conforme logo abaixo.

<Directory "D:/web">

Salve o arquivo ;)

5- Vamos testar a instalação/configuração do Apache para saber se está tudo ok seguindo os seguintes passos:

Abre o prompt de comando do Windows 7 (Iniciar + executar + cmd + enter) e siga os passos abaixo.

- Digite 'cd..' e tecle enter, repita quantas vezes for necessário, geralmente duas, para chegar ao resultado C:\
- Agora digite 'cd apache2/bin' e deverá ter um resultado como isso no prompt 'C:\Apache2\bin'
- Digite httpd -t

Se o Apache está corretamente configurado, se você seguiu os passos exatamente como descrevi durante o tutorial até o momento, o resultado deverá ser 'Syntax ok'.

Veja a imagem abaixo ilustrando os passos que citei em relação aos comandos no prompt.

instalando-apache-lounge-php-04

6 - Vamos definir através do prompt de comando (cmd) para que o Apache seja um serviço do Windows 7, assim sempre que o Windows for iniciado o Apache também é iniciado.

Se ainda não fechou o prompt de comando e ainda está no prompt 'C:\Apache\bin', perfeito, vamos a partir daí dar novos comandos, mas se já fechou, abra novamente e siga os passos anteriores para se chegar no prompt 'C:\Apache\bin' e logo após digite httpd -k install, feito, abra o Painel de Controle do Window 7, vá em Sistema e Segurança, depois Ferramentas Administrativas, encontre na lista do lado direito da janela, a opção Serviços e de duplo clique. Na janela que abriu agora, encontre na lista o serviço Apache2.2 e de duplo clique novamente para abrir uma outra pequena janela e na mesma aba já aberta (Geral) encontre a opção Tipo de inicialização e se já não estiver definida como Automático, escolha no menu de seleção esta opção para ter certeza de que o Apache será iniciado sempre que o Windows 7 iniciar.

Dica: Para monitorar o servidor Apache, há o ApacheMonitor.exe localizado dentro do diretório c:\Apache2\bin\ApacheMonitor.exe que você pode opcionalmente criar um atalho para ele e tornar acessível pela área de trabalho para facilitar os procedimentos de reiniciar, parar e iniciar o Apache sem muito trabalho.

Dica²: Você ainda pode definir para que o ApacheMonitor.exe inicie junto com o Windows de forma simples, apenas acrescentado um atalho para o ApacheMonitor.exe dentro do menu Iniciar do Windows 7, para isso basta clicar com o botão direito sobre o arquivo ApacheMonitor.exe na pasta bin do Apache e criar um atalho, selecione o atalho e recorte e (Ctrl+x), logo depois clique em Iniciar, Todos os Programas, encontre a pasta de menu Inicializar, clique com o botão direito sobre ela  e escolha a opção Abrir todos os usuários e dentro deste espaço deve colar (Ctrl+V) o atalho que você criou anteriormente. Ao reiniciar o Windows perceberá que o ApacheMonitor já vai estar rodando automaticamente, monitorando e dando possibilidades sobre o servidor.

Observação: Indiquei em um trecho do paragrafo logo acima, Abrir todos os usuários e colar o atalho, mas você pode preferir colar o atalho apenas para seu usuário, desta forma a opção no menu de contexto a ser escolhida deverá ser Abrir.

7- Vamos agora testar o servidor para ver se as páginas abrirão com sucesso no nosso diretório raiz que definimos no passo quarto passo deste tutorial.

Crie um arquivo HTML da seguinte forma:

<html>>

<head><title>Testando o Apache</title></head>

<body><p>O Apache foi instalado com sucesso!</p></body>

</html>

Salve dentro do diretório raiz definido no httpd.conf, ou seja, D:/web

Tenha certeza que o Apache está iniciado, abra seu navegador web e digite http://localhost e a página HTML que criamos deverá ser exibida com sucesso.

Na maioria das vezes os problemas que ocorrem são devido as  incorretas definições de configuração  no httpd.conf.

Para mais informações sobre as configurações do Apache, visite a página Apache documentation

Acompanhem a a próxima etapa deste super tutorial e aprenda a instalar o PHP 5.3.x VC9 no Windows 7 como módulo do Apache que acabamos de instalar.

Bons estudos!

Tópicos relacionandos

Postado por Roberto Lunelli

Comentários (49) Trackbacks (0)
  1. como faço para configurar corretamente quando no prompt do comando o windows acusa que estou utilizando um IP diferente e assim elel não pode configurar corretamente?

    • @Tadeu, não tenho como lhe responder ao certo, pois nunca ocorreu isso comigo e não deveria ter ocorrido com você se efetuou corretamente como instrui. Poderia te ajudar se passasse mais detalhes, como por exemplo me informar corretamente quando aparece essa mensagem… Quando tenta tornar o Apache como um serviço? Enfim… de maiores detalhes… O apache não inicia? o httpd.conf foi configurado corretamente?
      Abraço

  2. Roberto eu estava com a mesma duvida do Tadeu, mais consegui resolver tirando o simbolo # da tag ServerName, hehe

    • Olá @Reginaldo, que bom a sua colaboração.
      De fato é como eu disse ao @Tadeu quando perguntei se ele havia feito tudo corretamente como expliquei no tutorial, inclusive perguntei se ele havia o configurado corretamente o httpd.conf, mas ele não retornou para informar. Essa pergunta abrangia o fato da necessidade de descomentar 'ServerName' (tirar o # é descomentar, ou melhor dizendo, é habilitar a opção no http.conf), de outra forma não da certo, e outra coisa, eu mostrei como deveria ficar no http.conf no tutorial. Legal você postar um comentário para colaborar, dando enfase para um problema que pode ocorrer por falta de atenção. Pode ter certeza que ocorre muito disso comigo, mas basta rever e refazer e a gente acaba achando o erro.
      Obrigado…
      Grande abraço

    • Só tirar o # mesmo ehhehe

  3. Roberto,

    Por qual motivo não estou conseguindo instalar o Apache como serviço se meu perfil é de Administrador em meu PC?

    Segue mensagem exibida no prompt:

    Acesso negado. : Failed to open the WinNT service manager

    Abraço

    • Olá @Thiago, esse problema realmente é porque deve ser rodado como admin do SO, mas como você diz estar como admin, então fico perdido.
      Tente novamente porém desta forma, rodar o cmd.exe como administrador clicando com o botão direito do mouse e escolhendo a opção abrir como administrador.

      Pesquisando no google achei isso pra você:

      * Desinstale o Apache
      * Vá até Iniciar
      * Todos os programas
      * Acessórios, depois clique com o botão direito em Prompt de comando e selecione Executar como administrador, isso abrirá uma janela com comandos de direitos de administrador
      * Agora siga os passos do tuto novamente e quando precisar digitar comandos, digite-os no prompt aberto como admin como mencionei acima.

      Bons estudos!

  4. Valeu Roberto! Estava utilizando o wampserver porque havia tido problemas de configuração com o apache, mas com este tutorial foi fácil!

  5. Meu…queria dizer que vc está de parabéns pelo tutorial. Claro, sem falhas e com uma didática formidavel. A duas semanas estou procurando algo assim e finalmente encontrei.

    parabens… vou deixando uns comentários a medida que for lendo…

    vlw

  6. Ola Roberto.. Cara primeiramente quero te agradecer pelo tuto, muito claro. Porem eu tive um problema segui a risca o que voce falou so estou com um problema… ao abrir a pagina teste me da essa mensagem

    Forbidden

    You don’t have permission to access / on this server.

    Como posso resolver isso.

    Ah outra questão na parte que tenho que modificar o ServerName, no httpd.conf default , aquele que vem na pasta .zip tem uma frase assim (ServerName http://www.example.com:80) Cara o que eu faço apago tudo e deixo so (ServerName Localhost) ou mantenho o :80

    Por Favor me ajude se quiser add no MSN… E mais uma vez obrigado.!

    • Olá @Jeffrey, tente apenas localhost ;)

      • Ja tentei coloquei somente o localhost… eu estava pesquisando na internet.
        Acho que esse ERRO 403, que diz que eu nao tenho permissão, é dado por eu ter mudado a pasta root do apache. sera que nao eh por isso? Me ajude cara nao to conseguindo resolver esse pepino. Obrigado!

        • Isso de mudar o DOC ROOT não tem problema, eu mesmo no tuto ensinei isso.
          Eu estou ajudando, afinal postei esse tutorial com a forma exata de fazer a coisa.
          O que vc está digitando no navegador para verificar se o APACHE está ok?

          http://localhost

          Alguma coisa no caminho do tuto vc esqueceu ou fez a mais… ou uma ASPAS, vírgula, ponto… refaça teus passos.
          De uma atenção especial para a etapa 4 do tutorial, com bastante atenção de preferência.

  7. Ola na hora de instalar o C++ o componente que voce fala, tem um link eu fui atras e a microsoft lançou a versao 2010. Pode ser aquela.???

    O link eh este: http://www.microsoft.com/download/en/details.aspx?id=5555

    Microsoft Visual C++ 2010 Redistributable Package (x86)

    A detalhe reinstalei seguindo passo a passo, so que nao alterei a pasta root e o apache funcionou, repeti a operação mechendo na pasta root e a mensagem ERRO 403 apareceu. Nao entendi eu acho que talvez seja este componente C++. Flw

    • Você pode instalar esse 2010 mesmo, mas se não der pode instalar o que mencionei no tutorial sem precisar desinstalar esse 2010, pois não há conflito nessas distribuições não.
      Quanto ao erro 403, possivelmente deverá revisar os caminhos que você definiu para o doc root, e se o fez da forma correta, com as barras de forma correta etc.
      Qualquer coisa fala aí

  8. Roberto, parabéns pelo tutorial. São poucas pessoas que conseguem ser tão práticas e objetivos num assunto como esse de forma a ser entendido por todos os níveis de profissionais.

    Abs

  9. Vlw Roberto, estava tentando instalar isso já à alguns dias e sempre dava erro, mas com esse tutorial que você nos passou deu certinho.
    Para quem não instalou ainda eu recomendo.

  10. Segui o tutorial e funcionou direitinho aqui!
    Obrigado

    PS: Tive que tirar o # do ServerName e de executar o prompt de comando, como administrador, clicando com o botão direito. Exatamente como explicado acima.

  11. Parabens cara segui tudo certinho so mudei os endereços onde salvei os arquivos, mas tomando o cuidado d e substituir tudo e deu tudo certo, parabens e continue assim

  12. Cara muito obrigado, depois de varios tutoriais, somente o seu funcionou muito obrigado….

    tentando da meia noite, as 5 da manha consegui !!!

    Muito obrigado!!!

  13. Boa tarde, eu estou com um pouco de dificuldade em alterar o arquivo httpd.conf , no caso eu não estou alterando o
    “diretório raíz de suas páginas” esta ficando tudo no c: , se não for pedir d+ teria como mandar o arquivo ja alterado? samuelmatos_@hotmail.com desde já obrigado.

  14. Eu fiz exatamente como falou, porém não encontrei o instalador para 64 bits… Não consigo visualizar a página mesmo fazendo as alterações informadas pelo tutorial no arquivo, não sei o que acontece pois tive o mesmo problema com a instalação do apache. Poderia me ajudar?

  15. Olá Roberto, fiz tudo passo a passo e ao tentar abrir o http://localhost aparece “Ops! O Google Chrome não conseguiu localizar localhost”
    o que eu faço?
    Obrigado

  16. Olá! Instalei o Apache conforme o tutorial e deu tudo certo, mas na hora de iniciar o serviço deu erro. Recebi uma mesagem de que o Windows não pode iniciar o Apache 2.2 em Computador local. Pediu para que se o seviço fosse um não Microsoft para informar o fornecedor o erro de código 1. Pode me ajudar?

  17. Conseguo a solução. Troquei o porta 80 por 81. Creio que a parta já estava sendo usada pelo Win 7 ou outro aplicativo.

  18. Amigo, PARABENS, PERFECT

    um adendo… nao esta mais disponivel esta versao do apache para baixar…
    posso utilizar a ultima httpd-2.4.1-win32-ssl_0.9.8t.zip ?

    Grato pela atencao!

    • Olá @Genarks, a distribuição estável 2.2.22 está disponível SIM…
      Como eu já disse em comentários recentes a versão 2.4.1 ainda não é RC estável, portanto não funcionará.

      Basta ler com mais atenção a página de download do APACHELOUNGE ou ler aqui neste tutorial os comentários anteriores ao seu.

      No site da distribuição do download do APACHELOUNGE você pode ver antes, logo acima do link da versão 2.4.1, a seguinte mensagem:

      Apache 2.4.1

      Be aware that this is fairly new, for the latest proven stable, download 2.2.22 below.

      Uma tradução tosca disso seria:
      Esteja ciente de que este é bastante novo, para a última versão comprovadamente estável, faça o download da versão 2.2.22 abaixo

      Portanto a versão que funcionará é a versão 2.2.22 e está sim disponível… por enquanto esqueça a versão 2.4.1
      Bons estudos!

  19. Cara, parabéns pelo tutorial, muito bom.
    Agora estou com um problema, ver se vc pode mim ajudar.
    Estou utilizando o apache 2.2.15 e o php 5.3.5.
    O apache está rodando tranquilo, consigo executar código html. Mas quando rodo algum arquivo php, o servidor não consegue encontrá-lo. Ex: http://localhost/teste.php. É retornada a seguinte mensagem:
    The requested URL /teste.php was not found on this server.
    Vlw

    • Olá @Neto, tudo que falarei agora já está explicado no tutorial, portanto serão apenas lembretes do que se deve ter atenção:

      Veja se no httpd.conf do APACHE você definiu corretamente a linha DocumentRoot e
      Depois verifique se o arquivo teste.php que está tentando acessar se encontra nesse diretório de fato…

      Se isso que falei acima está correto e ainda não funciona…
      veja então ainda no httpd.conf, um pouco mais abaixo das configurações anteriores, se as seguintes linhas estão como abaixo:


      DirectoryIndex index.php index.html


      Se tudo certo e ainda não funcionar, veja se de fato colocou ao final do mesmo arquivo as seguintes linhas:

      PHPIniDir "C:\php"
      LoadModule php5_module "C:\php\php5apache2_2.dll

      AddType application/x-httpd-php .php
      AddType application/x-httpd-php-source .phps

      Obs.: Sempre que fizer alguma alterção neste arquivo de configuração do APACHE (httpd.conf) ou no php.ini, além de salva-lo, é óbvio, deves reiniciar o APACHE também.
      Bons estudos!

  20. Olá Roberto, seu tutorial é dez. Ele me ajudou muito.
    No começo instalei a versão 2.4.2, depois lí alguns comentários e achei melhor deletar a pasta inteira para instalar a versão 2.2.22. Instalei também o C++ 2008 64bit. Eu já tinha o 2009 e 2010.
    Para testar o Apache, no navegador, quando digito “http://localhost” aparece outra coisa: aparece a imagem IIS7 cercada de “Benvindo”, “Wellcome”, etc., e cujo arquivo (iisstart.htm) está em “C:\inetpub\wwwroot\”
    Para aparecer o html que eu fiz, para o TESTE1 no Apache, eu preciso digitar “http://localhost/TESTE1.htm”.
    Embora esteja um pouco diferete do seu tutorial, parece que está correto, ou não?

    Outra coisa:
    Como eu faço para excluir o serviço Apache242 de “Ferramentas Administrativas”, já que eu deletei a pasta da versão 2.4.2 inteira?

    • @José Luiz, o que ocorre é o seguinte… no diretório que vc definiu como seu docRoot já havia um arquivo index, que no caso é esse que vc mencionou do IIS7, que provavelmente deve ser algo antigo ou instalação anterior que utilizava esse dir.

      Quanto à vc precisar digitar o nome do arquivo para ele ser exibido, parece meio óbvio. como vc gostaria de acessar TESTE1.htm sem informar literalemtne o caminho para ele.
      Lembre que para não precisar digitar o nome do arquivo, este precisa ter o nome de index assim bastará digitar o nome do dir… no caso http://localhost/ e vai acessar seja lá o que for que tiver no seu arquivo index.php.

      Aparentemente parece ter dado tudo certo.
      Bons estudos!

  21. Roberto, Já apaguei tudo que achei do arquivo iisstart nos dois localhost (do Windows c:\inetpub\wwwroot\… e do Apache D:\web\…) No D:\web coloquei 2 arquivos: o TESTE1.htm e o index.php.
    Quando digito C:\localhost para procurar nos dois: Internet Explorer e no Google Crome, só aparece aquela figura.
    Em propriedade da figura descobri que a figura que aparece é : http://localhost/welcome.png
    Acontece que não existe esta figura nos dois localhost, nem dentro das sub pastas. Será que existe outro localhost?

    • @Jose deves analisar com cuidado teu httpd.conf e verificar se os caminhos estão definidos corretamnte.
      Não sei o que pode estar ocorrendo especificamente no teu caso, pois é uma experiência que nunca vivenciei.
      Vamos fazer o seguinte… primeiramente não deves ter 2 Localhost, segundo deves testar da seguinte forma… ao invés de salvar o arquivo como index.php, salve como index.html e veja se vai rodar normalmente… Se sim, é porque o teu servidor não está configurado para interpretar arquivos .php como index. Para tanto deverá no arquivo httpd.conf ADICIONAR ‘index.php’ na linha da diretiva ‘DirectoryIndex‘:

      Ficando assim: DirectoryIndex index.php index.html

      Reinicie o APACHE, se você ainda não instalou o PHP… então faça isso conforme a continuação deste tutorial e vamos ver o que acontece.
      Qualquer coisa volte a relatar.
      Bons estudos!

  22. Olá, eu tenho o mesmo problema @Jeffrey. Quando eu chamo localhost:81, me retorna o erro 403 Forbidden. Sim, eu alterei a porta para 81 na linha Listen.

    Está tudo certo os caminhos, apesar de eu ter usado caminhos diferentes do tutorial. Se tivesse algo errado, o Apache nem iria rodar e nem encontraria o arquivo.

    Estou usando o Apache Lounge 2.2.22 para Win 64 e meu Windows é o 7 Ultimate 64 bits. O PHP é a última versão, isso é, 5.4.3 VC9, porém, por enquanto o problema é com o Apache. Existe algo errado nas versões? O que eu posso fazer?

    Valeu!

  23. Eu fiz o procediemtno acima porem o apache não starta eu tinha o apache uma versão mais antiga desistalei e instalei uma nova

    • Olá Leandro, de uma olahda nos coments acima e talvez te ajude.
      O teu problema pode estar ligado ao que já foi debatido.
      Imcompatibilidade entre as ferramentas, ou o PHP ou o APACHE ou ambos.
      Bons estudos!

  24. Para quem estava tentando alterar o caminho default do apache, mais abaixo do parâmetro DocumentRoot, você encontra as permissões padrões da pasta: .

    Retire a valor “Deny from all” e o Erro 403 acesso proibido se vai.

    Vlw

  25. Consegui instalar usando o apache 2.4 neste link:
    http://www.apachelounge.com/download/win32/binaries/httpd-2.4.3-win32.zip
    Baixei essa versão PHP VC9 x86 Non Thread Safe (2013-Feb-20 19:02:27)
    http://windows.php.net/downloads/releases/php-5.3.22-nts-Win32-VC9-x86.zip

    No http.config mudei a linha

    LoadModule php5_module “C:\php\php5apache2_2.dll

    para

    LoadModule php5_module “C:\php\php5apache2_4.dll

    Deu certo.


Deixe um comentário

Sem trackbacks