Dec-07 11

Instalando o Apache, PHP, Mysql no Windows

Enviado por: Thales RB. .     27 comentários.     Categorias: Desenvolvimento, MySQL, PHP

Hoje eu apanhei bastante para conseguir instalar o trio Apache, PHP, Mysql, por isso resolvi fazer um tutorial, para ajudar quem quiser instalar o php em seu PC para fazer testes ou aprender PHP.

Bem vale apena avisar que é um pouco complicado e demorado pra instalar esse trio, então se você quiser isso somente para testar alguns scripts ou fazer testes é mais facil usar sistemas prontos como o easyphp ou xampp, eu estava usando o xampp e ele é bem tranqüilo de se usar, mas como não estava funcionando o mod_rewrite resolvi instalar o php normalmente.

 1) Download

Para começar é preciso fazer o download do trio parada dura.

Apache: http://www.apache.org/dist/httpd/binaries/win32/

eu baixei o apache_2.2.6-win32-x86-no_ssl.msi

PHP: http://www.php.net/downloads.php

eu baixei o PHP 5.2.5 installer

MySQL: http://dev.mysql.com/downloads/mysql/5.0.html

eu baixei esse Mysql-5.0.45

esses arquivos .msi são que vem com instalador

2) Instalando o Apache

Vamos começar a instalar pelo Apache se você baixou o que eu citei é só ir clicando em avançar, para ficar mais fácil instale na pasta C:\Apache2.2\. Somente na tela Server Information que deve ser digitado alguns itens, como a idéia é usar o php no seu computador preencha os itens; Network Domain:”localdomain”, Server Name: “localhost” e seu e-mail no último campo.

Apos terminar de instalar o apache, ele é configurado como um serviço do Windows, que pode ser acessado através do Executar services.msc e por isso a cada vez que é feito uma alteração no apache é preciso reinicia-lo, mas ele tem o apache monitor pra agilizar isso, ele fica no system tray(ali perto do relógio) .

Para testar se está funcionando digite no seu navegador http://127.0.0.1 ou http://localhost/ se estiver funcionando irá aparecer na tela It works!. As versões mais antigas do Apache exibiam outras informações, mas a 2.2 mostra só isso. O servidor está funcionando. As páginas ficam por padrão na pasta “htdocs”, dentro da pasta onde o Apache foi instalado. No meu caso, é “C:\Apache2.2\htdocs”. Basta substituir o arquivo “index.html” pelo do seu site, e colocar suas páginas e sub pastas aí. Assim você poderá acessar as sub pastas da pasta “htdocs” digitando http://localhost/pasta, em qualquer navegador no pc local.

3) Instalando o PHP

Se você baixou o que eu usei, ele vem com o instalador então é só ir dando proximo. Para ficar mais facil a configuração instale ele na pasta C:\php5. Na instalação do PHP, ele pedirá o tipo de servidor usado. No caso, escolha Apache 2.2.x:

Então ele pede o local dos arquivos de configuração do Apache. Localize a pasta conf, dentro da pasta do Apache, senão a configuração não será automatizada (mas veremos também como fazê-la manualmente):

 

Em uma das telas irá aparecer a opção para selecionar o que será selecionado, na categoria “Extensions”, localize o item “MySQL”, clique no ícone de um disco ao lado dele, e clique na opção “Will be installed on local hard drive”:

 

Aproveite e selecione a opção GD2, caso queira trabalhar com imagens dinamicas no php.
Ao final da instalação o instalador do PHP pergunta se você quer que ele atualize os arquivos de configuração do Apache. Se quiser a configuração automática, confirme.(eu vi isso em tuto mas no meu não apareceu tal opção).

Se já tiver sido configurado o Apache no php para testar crie um arquivo teste.php e nele coloque:

<html><head><title>Informações do meu servidor</title></head>
<body>
<?php phpinfo(); ?>
</body></html>

4) Configurando o apache para reconhecer o PHP

Se estiver funcionando ele irá exibir um numero imenso de informações do php.

No caso de não ter aparecido a tela para configurar o Apache durante a instalação do php teremos que configura-lo manualmente.

Para fazer isso vá na pasta onde foi instalado o Apache e vá na pasta conf e abra o arquivo httpd.conf no final do arquivo(na ultima linha mesmo) e adicione:

PHPIniDir “C:\\php5\\”
LoadModule php5_module “C:\\php5\\php5apache2_2.dll

A linha PHPIniDir define a pasta do PHP, onde ele foi instalado (onde esta o php.ini original).
A linha LoadModule… Carrega o módulo do PHP no Apache, que se chama “php5_module”, e está no arquivo “C:\php5\php5apache2_2.dll”.

Agora vamos fazer algumas edições no php por isso abra o arquivo php.ini que está na pasta do PHP, as alteraçoes são opcionais mas são muito uteis.

Procure por short_open_tag e mude de Off para O, com isso serão aceitos os comandos<? … ?>

Procure por error_reporting e tire o ; da frente dele(para descomenta-lo) e adicione na frente E_ALL & ~E_NOTICE & ~E_STRIC, com isso serão exibidos os erros e em que linha eles estão, sem isso se houver erro a pagina simplesmente ficará branca.

Dica: através do Adicionar ou Remover programas no item do php tem o botão Alterar, ao clicar nele uma das opções é Change com ela é possível alterar a versão do tipo de servidor, e das extensões existentes, isso pode ser muito útil caso tenha errado ou esquecido de algo.

5) Instalando o MySQL

E mais uma vez é só ir dando avançar nas opções, eu recomendo que ele seja instalado na pasta “C:\Apache2.2\MySQL”. Num ponto ele pede a ativação de conexões TCP/IP, e permite escolher a porta onde ele ficará disponível, dando como padrão a 3306. Deixe esse valor, e se for o caso, libere essa porta para aceitar conexões de entrada no seu firewall.

Mais algumas telas ele dará a opção de incluir o caminho do MySQL na variável de ambiente “Path” do Windows. É bom marcá-la, para que você possa chamar os executáveis do MySQL a partir de qualquer prompt, em qualquer pasta. Basta marcar a opção “Include Bin Directory in Windows PATH”:

Na próxima tela deve-se definir a senha de root, que é o administrador do MySQL. Se você mexe com PHP deve saber que para acessar um banco de dados é necessário fornecer um nome de usuário e senha válidos para aquele banco; você poderá usar o “root” e a senha definida aqui, ou outra conta. Justamente, para criar outras contas você precisará do root, e para alterar as configurações ou criar novos bancos de dados, também. Portanto, anote esta senha em um local seguro, se vc perder essa senha terá q desinstalar e instalar novamente o mysql.

Agora vem a última parte da configuração. Se algo der errado aqui, o MySQL poderá não funcionar corretamente. Apenas clique em “Execute. Se tudo ocorreu bem, você verá uma tela como essa.

Caso de alguem erro em Start Service volte duas telas e mude o Service name(imagem acima) para mysql5.

Se ele não conseguir obter acesso à porta definida na instalação (por padrão, a 3306), ele poderá exibir esta mensagem:

Clique em “Retry” quantas vezes forem necessárias, para tentar a configuração. Libere conexões de entrada na porta 3306, pelo seu firewall, se for o caso. Se clicar em “Skip” a configuração falhará, e você deverá executar o assistente de configuração novamente.

O mysql por padrão é acessado atravez do DOS usandos os comandos SQL, mas é possível usar uma interface gráfica, existem varias a mais comum é o phpmyadmin para usa-lo é só extrair os arquivos para a pasta htdocs do apache C:\Apache2.2\htdocs e renomeie o arquivo config.sample.inc.php para config.inc.php abra o arquivo e digite algo em $cfg[’blowfish_secret’], para acessa-lo é só em localhost e abrir a sua pasta http://localhost/phpMyAdmin/ e digitar o usuário(root) e senha criados no mysql

Pronto agora o trio parada-dura deve estar funcionando tomara.

No caso de não ter funcionado, quero avisar que para versões anteriores do arquivos usam configurações diferentes, essas versões estão bem mais fáceis de serem instaladas, mas se você não baixar os pacotes .msi a coisa muda totalmente.

Bem qualquer duvida pode perguntar que eu tento ajudar.

Livros sobre PHP
Quer aprender mais sobre PHP?. Então veja o preço de alguns livros no Submarino.

 

 

 

Compartilhe nos Sites Sociais: Adicionar esta notcia no Linkk Adicionar esta notcia no Rec6 Adicionar esta notcia no Ueba
Comment on December 11th, 2007.

Muito legal! Parabens!
Eu nem consegui instalar tudo. A solução que eu encontrei foi instalar aquelas suites “Lampp” “Xampp”… muito boas.
Mas nada substitui um trabalho bem feito e personalizado!

Comment on December 11th, 2007.

pois é, é bem complicado instalar esse trio,
eu levei umas 3hrs pra conseguir fazer tudo funcionar, pq nao dava certo dai tinha que desinstalar e instalar de novo, o segredo é ter persistencia =D
Mas sem duvida dependendo do que vc for fazer é muito mais facil usar as suites prontas

Pingback on December 14th, 2007.

[…] Para usar o formulário usamos 2 arquivos o primeiro terá somente o formulário, usando as tags aqui explicadas, por isso pode ser em .html. E o segundo irá coletar os dados digitados, por isso precisa ser feito usando a linguagem de programação escolhida, no caso irei explicar com PHP, por isso é preciso executa-lo em um servidor, ou em localhost com o php instalado. […]

Pingback on December 14th, 2007.

[…] mas o ideia é ter um servidor no seu pc para tornar mais rapido e facil os testes, por isso veja aqui como instalar o php no […]

Dan
Comment on December 28th, 2007.

Ai
Estou a tentar instalar esse trio e ate agora esse tuto e o q me pareceu mais facil de entender e ate pensei q resultasse,mas na hora de testar não da nada. A configuração manual usando php.ini e ainda pior porque da erro.Diz q a sintaxe e invalida e vem uma folha do bloco de notas em branco.Ja tentei de livros a tutoriais e da sempre o mesmo problema.

Comment on December 28th, 2007.

não entendi muito bem o seu problema o que vc quer dizer com “vem uma folha do bloco de notas em branco”??
se vc quer dizer que ao criar o arquivo com o < ?php phpinfo(); ?> aparece uma pagina em branco??
se for isso é porque o apache não está configurado corretamente, ou seja ele não sabe o que é esse < ?php phpinfo(); ?> e não mostra nada.

Vc fez a parte da segunda tela da instalação do php??: “Então ele pede o local dos arquivos de configuração do Apache. Localize a pasta conf, dentro da pasta do Apache,”

E o apache está funcionando corretamente??, ao ir no localhost aparece It works!??

Ivan
Comment on January 1st, 2008.

Olá Dan, estou com o msm problema, na hora de testar o arquivo teste.php dá http://error 404 not found, bom, já tentei vários tutos e nada, se alguem tiver uma solução, por favor, POST IT!!! Abraços, Ivan.

Ivan
Comment on January 1st, 2008.

Bom, verifiquei o arquivo de instalação do apache que usei e foi esse: “apache_2.2.6-win32-x86-openssl-0.9.8e”, diferente do utilizado neste tutorial será que pode ser isso, vou tentar com o proposto neste artigo. Abraços.

Comment on January 2nd, 2008.

eu estava usando outras versões, do php e do apache(pq eu já tinha eles aqui), mas como deu um monte de erros, eu baxei os que expliquei, e finalmente consegui fazer tudo funcionar.
Tenta usar as versões que eu falei que pelo menos comigo funcionou normalmente =D

gtk
Comment on January 18th, 2008.

como que eu faço a programação p/ ter um resultado igual da tags.

Comment on January 18th, 2008.

@gtk

nao consegui entender o que vc quer fazer, pode explicar um pouco melhor??

Comment on May 1st, 2008.

Pois é um tutorial muito completo e útil.
Mas tou com um probleminha.. Fiz tudo certo baixei os 3 como explica aí, todos foram instalados corretamente, criei o formulário em php que vc falou tbm.
Mas quando clico em enviar no “form.html” manda baixar o arquivo “resultado.php”.
Isso acontece com muitos arquivos em php que eu tenho. Por favor se alguem poder me ajudar ficarei muito grato. Meu e-mail é mails63@yahoo.com.br Ajudem plis!!

Comment on May 2nd, 2008.

Ajudem ae po.. ¬¬

Comment on May 3rd, 2008.

opa foi mal gustavo

então isso ocorre pq o apache não está configurado para reconhecer o PHP, dá uma olhada no passo 4 para ver se vc fez tudo certo(adicionei esse numero agora =D)

Comment on May 3rd, 2008.

Vou ver se resolve..
Vlw

Comment on May 3rd, 2008.

Bom olha só.. xD

Arquivo “httpd.conf”.

No final tem isso:

#BEGIN PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL
PHPIniDir “C:/php5/”
LoadModule php5_module “C:/php5/php5apache2_2.dll”
#END PHP INSTALLER EDITS - REMOVE ONLY ON UNINSTALL

Deixo assim ou coloco em baixo:
PHPIniDir “C:\\php5\\”
LoadModule php5_module “C:\\php5\\php5apache2_2.dll
-

Arquivo “php.ini”.

Quando pesquiso por short_open_tag aparecem 2 coisas:
a 1ª é:

; It’s not possible to decide to force a variable to be passed by reference
; when calling a function. The PHP 4 style to do this is by making the
; function require the relevant argument by reference.
; - short_open_tag = Off [Portability]

a 2ª é:

; Allow the <? tag. Otherwise, only <?php and tags are recognized.
; NOTE: Using short tags should be avoided when developing applications or
; libraries that are meant for redistribution, or deployment on PHP
; servers which are not under your control, because short tags may not
; be supported on the target server. For portable, redistributable code,
; be sure not to use short tags.
short_open_tag = Off

Eu devo modificar qual?
Na que eu dever modificar coloco “O” ou “On”?

Manda 1 exemplo do correto plx

Quando pesquiso por error_reporting aparecem muitos:
Pode me enviar a linha e como devo deixar?
-
Vlw ae Thales..

Comment on May 3rd, 2008.

o arquivo httpd.conf está certo do jeito que tá(se vc instalou o php na pasta indicada)

e o php.ini tem que mudar na segunda opção deixando:
; be supported on the target server. For portable, redistributable code,
; be sure not to use short tags.
short_open_tag = On

eu nao tenho o arquivo para poder ver a linha que está o error_reporting, mas ele fica no seguinte lugar e é preciso tirar o ; e colocar em on o display_errors ficando asim

; - Show all errors
;
error_reporting = E_ALL

; Print out errors (as a part of the output). For production web sites,
; you’re strongly encouraged to turn this feature off, and use error logging
; instead (see below). Keeping display_errors enabled on a production web site
; may reveal security information to end users, such as file paths on your Web
; server, your database schema or other information.
display_errors = On

Comment on May 3rd, 2008.

Thales, funcionou..
Valeu msm..
Muito obrigado!
Um Abração. Se precisar de alguma ajuda que estiver a meu alcance, pode falar(mails63@yahoo.com.br)

Comment on May 5th, 2008.

opa q bom que conseguio instalar, não é todo mundo que consegue instalar eles =D

Comment on May 5th, 2008.

hehe..

Comment on May 5th, 2008.

mas só to com um problema, agora que vc me ensinou a configurar pra aparecer os erros, ta aparecendo direto, num lugar que não tinha erro aparece de monte agora..
no caso do formulário que vc postou funciona normal, mas se eu abro só o resultado aprece um monde de erros..
mas o resto ta 100%, vlw =D

Comment on May 6th, 2008.

dá uma olhada aqui:
http://br.php.net/manual/pt_BR/function.error-reporting.php

que vc pode definir o tipo de erro que será exibido, pode melhorar um pouco pra vc =D

Comment on May 6th, 2008.

ae, funciono certinho,
vlw msm Thales..
lembrando, se precisar de alguma ajuda que estiver a meu alcance, pode falar
=D =O =) =]

Daniel
Comment on June 18th, 2008.

Obrigado foi muito util.
Ja tinha procurado em um monte de sites e não conseguia fazer em nenhum.

Mas agora to procurando o como fazer varios diretorios no apache pra poder Hospedar varios sites em 1 so pc.
Mas eu não consigo fazer que cada site tenha 1 url diferente.
Se alguem sober decha o link ai

flw galera

Comment on June 19th, 2008.

não entendi muito bem a sua duvida

se fizer varias pastas dentro do apache e acessar tipo http://localhost/pasta1 http://localhost/pasta2 ele não funciona ??

ou vc quer fazer um esquema de hospedagem mesmo, cada pasta ser para uma url diferente ??

Sofia Santos
Comment on June 27th, 2008.

Oi! Eu utilizo um MAC OS X em vez de Windows.
Instalar este trio serve apenas para tester no meu computador o que vou fazendo em .php, correcto?
Quando eu quiser aplicar estes conhecimentos numa pagina web eu preciso sempre de um servidor remoto para colocar as páginas. Confirme que estou correcta, por favor.

Comment on July 1st, 2008.

sim esse tutorial serve para testar em seu pc

pra colocar o site no ar, pra que qualquer um possa acessar é preciso usar um servidor de hospedagem, para isso existe alguns serviços gratis(mas todos q eu já testei são bem ruins )

Deixe um comentário

Os campos nome e e-mail são obrigatorios(o e-mail não será exibido), a URL é opcional.

Os comentários podem ter os seguintes comandos:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>