Windows 7 com Apache + PHP + Porta 80
8.540 visualizações
Após um ano de faculdade o notebook já não é mais o mesmo: cheio de programas, 15 editores de php, alguns aplicativos de editoração gráfica, players e tudo o que há de bom.
Analisando o fato de que meu note já estava saturado e cheio de buracos no registro resolvi instalar a mais novo xodó de muitos o Windows 7. Como tenho um notebook de baixo custo e o seu S.O.(Ubunuto 9.10 + WinXP) não estava trabalhando de forma muito legal com o hardware, que pra variar é da linha SIS, tive que apagar os sistemas do meu HD. Após instalado segui com o intuito de voltar os programas que mais uso, como o Apache + PHP e PostgreSQL. mas para minha surpresa o Apache instalava porém não subia, até pensei que fosse problema de versão mas estava enganado, fiz um novo download de todos os app só que nenhum funcionou.
Como bom menino e google na mente, realizei varias pesquisas. Graças a teimosia descobri que o Windows 7 ocupa por padrão a porta 80, que por sinal é usada pelo serviço de HTTP e então vi que foi por isso que estava dando erros constantes.
Solução:
Alguns tutoriais pregam que para o Apache funcionar você tem que habilitar nos recursos do Windows o IIS e mais algumas coisas. Não faça isso!
Simplesmente abra o editor de registros (REGEDIT), encontre a seguinte chave:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP, adicione a seguinte DWORD (32bits)
De-lhe o nome de NoRun. Mude seu valor para 1.
Na chave Start mude seu valor para 0.
Reinicie o sistema e pronto; seu Apache estará rodando na porta 80.
Instale normalmente o PHP, eu usei a versão 5.2.5, que por sinal para desenvolvimento funciona perfeitamente. Configure-o, mão na massa e um ótimo desenvolvimento.
-->












Saudações !!!
Gostaria de saber qual a versão do apache esta usando para esse sincronismo e se esta mesma versão “conversa” bem como o PHP no winXP.
Primeiramente muito obrigado pela visita. A versão do Apache é a 2.2.14, mas em relação ao uso no Windows XP creio que funcione perfeitamente como as outras versões anteriores. Mas em relação a versão do PHP que estou usando é a 5.2.5 sendo a que eu usei no XP. Respondendo a sua questão creio converse sim tão bem quanto ao XP.
Meu nobre, qual é a versão do Win7 que você está utilizando?
eu utilizo a Ultimate com XAMPP e não tive problemas até hoje.
Abraços!
Alexandre, muito obrigado pela visita e pelo comment. A versão do Seven tambem é a Ultimate, como você tentei usar o Wamp atual, mas mesmo assim ele não subia. Pensei em usar o XAMPP mas como teimosia queria que ele funcionasse como no xp e depois de varios tutoriais vi que realmente a porta em que o Apache estava escutando estava sendo usada por outro aplicativo do Win7 se não me engano algo como “Branch…”. Mas após configurar as chaves no registro o Apache funcionou corretamente. Alguns camaradas na faculdade instalaram o mesmo no Seven sem algum problema, mas comigo foi diferente, bem fica a dúvida do porque isso ocorreu. Mais uma vez muito obrigado.
Muito boa dica e muito bom post. Obrigado por compartilhar algo d extrema relevância, especialmente para quem usa php-apache e pensa em fazer upgrade de SO. Obrigado mesmo.
IMPORTANTE: Pra quem usa windows 7 64bits ao invés de criar uma DWORD (32bits) deve criar uma DWORD (64bits).
Fiz isso no meu e tá funcionando perfeitamente.
Daniel Oliveiraaaa você salvou a pátria brasileiraaaa meu fiii…. vlw mesmo, tava louco com esse problema! vlw, Deus te pague hehehe, abraço
Daniel Obrigado por compartilhar essa informação mas…
Ela não funcionou comigo.
Estou utilizando o Win7 Ultimate (tenho um note 64bits, mas intalei o Win32bits).
Intalei o Servidor Vertrigo! é da o seguinte erro:
Apache HTTP server does not work correctly. Check whether other applications use the important port (80) and terminate them. Moreover, check firewall settings and correctness the configuration files.
O serviço não inicializa!
Abraços…
Tiago,
Boa noite!
Primeiramente agradeço a visita ao nosso blog. Bom, tive alguns problemas recentemente ao instalar o Apache em um Windows Server 2008 R2 com esse mesmo problema, em que ao finalizar a instalação o Windows não consegue executar o serviço do Apache. Resultado, após muito café e fios de cabelo no chão fui procurar algo relacionado no arquivo de configuração do Apache, essas novas versões no arquivo de configuração vem com a linha “Listen 80″ comentada, descomente a mesma e reinicie o serviço do web server e também desative o firewall do windows. Creio eu que irá funcionar.
Agradeço mais uma vez pela participação. Muito Obrigado. Qualquer duvida comente aqui!
Um abraço!
cara vc acabô com minhador de cabeça!!!
MUITÍSSIMO OBRIGADOOOOOOOOOOO….
Boa noite,
Muito obrigado por compartilhar esta solução, pois também uso o windows 7 ultimate, e como disse o amigo alexandre até pouco tempo eu nao tinha problemas em usar o xampp + php, porém a alguns dias começei a ter este mesmo problema e se nao fosse a sua boa vontade de postar a solução eu estaria procurando ainda…
Obrigado, Abraços…
Boa Noite
O executei todas as alterações no regedit, e a seguinte mensagem persiste em aparecer; “Apache cannot be runned: another Web server use the Web port or port is bloked by firewall.” meu pc tem processador de 64bits e o win 7 ultimate o easy php verção 5.3.3. mas a DWORD não tem a opção de 64bits só a QWORD mas também não deu certo. E o firewall está absolutamente desativado.
HELP-ME
grato
Galera,
Estou com está necessidade agora, está solução apresentada por vocês é válida para o Windows Server 2008?
Quero preparar o mesmo para nossos desenvolvimentos.
No aguardo….
Atenciosamente,
Rodrigo Teixeira
Meu amigo, passei o dia inteiro me matando para achar a solução de que o apache não estava iniciando pelo xampp no meu windows 7.
Até que achei essa solução aqui. Muito obrigado, que Deus abençoe.
Não conhecia esse site, mas estarei visitando mais vezes.
Obrigado!
Rodrigo, Muito obrigado pela visita e comentário. Quando a gente passa por certos perrengues e encontramos como sair dessa devemos compartilhar a polvora de como foi solucionado. Fico contente de ter te ajudado. Eu é que agradeço pela visita. Muito Obrigado!
Eu não tive êxito ao fazer as modificações e reiniciar o computador, sempre eu tenho que mudar a porta para 8090, eu utilizo o xampp 1.7.3 com o windows 7 Ultimate. Alguém teria uma sugestão??
Grato.
Ninguem pode ajudar?
Edgar,
Provavelmente algum aplicativo ou processo está usando a porta 80 além do que está sendo mostrado no tutorial. Se conseguirmos alguma ajuda em relação em como descobrir qual porta está sendo usada entramos em contato.
Atenciosamente
Certo, Obrigado.
Valeu cara…uma solução simples e indolor…abraço…
Obrigado pela visita Samuel! É sempre bom saber que a dica lhe foi útil.
É, desenvolvedor PHP sofre de vez em nunca, quando falamos de servidor para roda-lo, agradeço a sua resolução do problema e funcionou aqui… Msm não gostando de futucar os regs do windows, serviu e tá rodando. Abraço e obrigado
ola, então fiz os passos ai , porem n deu certo.
to com a versão do win7 Home basic (x64)e o easy 5.3.8
criei o arquivo DWORD 32 o QWORD 64 e nada,
sempre acusar Apache http serve parou de funcionar,
teria algum dica pra testar aqui,
se n fosse mais pratico ter q tevar meu note pra cima e pra baixo ,
juro q levava meu pc , pois n me deu essas dor de cabeça rs
Esta acontecendo o mesmo comigo, win 64 Pro. Já desabilitei firewall e nada :s
Bom Gente, passei por esse mesmo problema, mas não existe solução mágica para isso. No caso de Windows 7 32Bits funciona em alguns casos. NO meu funcionou de primeira, apesar de ser 64 Bits, mas logo que reiniciei o problema retornou. Tive que optar por alterações das portas de acesso do Localhost, e ai acabaram-se meus problemas. Mesmo porque usando se você estiver usando o Skipe ou qualquer outro programa que compartilhe a porta 8080, você terá prolemas
Estou postando aqui um TUTO e se o Daniel achar conveniente ele publica. É a minha forma de ajudar.
Abraços.
Samuel Souza.
TUTORIAL
Bom, o tutorial se desenvolverá em três etapas:
1) Baixar o Software
2) Instalar o Software
3) Configurar o Software
* Durante um dos procedimentos, devido a troca de porta de acesso ao servidor, poderá ocorrer um erro de acesso ao seu Apache.
A solução foi incluída na Etapa 3 item 2, por questões didáticas.
**Não se assuste com o tamanho do tutorial! É que eu expliquei tudo bem detalhado e com várias dicas e conceitos básicos. Se isso fosse retirado, sobrariam, talvez, algumas linhas bem objetivas (mas que, sinceramente, deixariam esse texto bem fraco).
*** 1621 palavras e 6 páginas A4 de texto
ETAPA 1)
Você deverá baixar um software chamado WAMP.
W.A.M.P = Windows + Apache + MySQL + PHP
Ele ainda contém o PHPMyAdmin (administração gráfica do MySQL) e o SQLiteManager, uma alternativa ao primeiro.
Este software é um gerenciador dos três últimos sistemas em conjunto com o Windows. Uma ferramenta potencialmente poderosa para profissionais e extremamente fácil para uso de iniciantes.
Para baixar, acesse: http://www.wampserver.com/
Clique em downloads e siga os procedimentos.
ETAPA 2)
Instale o software!
Algumas perguntas que ele fará:*
* Não está na ordem das perguntas, desculpem-me; Quem testar e puder me dizer qual é, corrigirei.
1) Instalar os serviços automaticamente (iniciam com o windows) ou abri-los manualmente? Caso você não saiba o que está fazendo, e como esse é um tutorial para iniciantes, escolha a opção manualmente.
2) Onde instalar o programa? Escolha uma pasta onde tudo será instalado.
3) Onde colocar a pasta WWW? Esta é a pasta onde os arquivos do servidor irão rodar (sites, formulários etc). Defina-a (pode ser diferente da pasta onde tudo foi instalado).
4) Qual seu browser favorito? Gerenciador de arquivos, e não WebBrows (como FireFox). Por padrão escolha C:\Windows\explorer.exe; Caso tenha outro, escolha-o.
5) Qual seu servidor SMTP? Para quem possui um servidor smtp (de envio de e-mails, basta colocá-lo ali). Por exemplo, eu posso usar o servidor do google: smtp.google.com; Assim quando eu estiver utilizando um formulário de e-mail, por exemplo, o PHP utilizará o protocolo SMTP do Google para enviar as cartas eletrônicas; Aqui cabe uma ressalva: Cuidado com a política de envio de mensagem e SPAM do seu servidor. Caso você não queira testar envio de e-mails, deixe ‘localhost’.
ETAPA 3)
Agora vamos configura o sistema, em sua parte mais difícil, onde a maioria das pessoas encontram problemas.
Mas tudo é fácil e rápido! Basta seguir corretamente as instruções abaixo!
1) Configurando Apache:
Ao abrir o programa Wamp (através do ícone Start Wamp Server) clique nele uma vez com o botão esquerdo e:
Caso você tenha deixado os serviços do apache automático, clique primeiro em ‘stop all services’ e depois siga a dica abaixo.
- Após certificar-se que o Apache não esteja com o serviço ON, vá na opção ‘Config Files’ e clique em ‘httpd.conf’.
Abra com o bloco de notas ou wordpad.
Localize a linha ‘Directory’ que contenha algo assim:
e adicione, antes da linha , os seguintes dados:
Options ExecCGI FollowSymLinks Includes Indexes
Allow from all
Order allow,deny
AllowOverride All
*Observe que alguns deles já existiram, basta adicionar o que não tem e adicionar os dados que estão faltando aos que já estão lá.
- Agora localize a linha ‘Listen 80′.
Por padrão, o Apache vem configurado para rodar na porta 80, todavia a maioria do acesso a Internet vem com esta porta bloqueada para conexões entrantes, isto é, ninguém conseguirá visualizar seu site pela porta padrão do sistema.
Mude o valor 80, para 2380 (esta porta costuma funcionar em praticamente qualquer internet), todavia fique a vontade para utilizar outras como: 8080, 8010 etc (valores de 1 mil a até 65.536, e dê preferência a portas altas, do tipo 50102, quando não estiver conseguindo).
Salve o arquivo.
Inicie os serviços (clique no Wamp e escolha ‘Start All Services’).
Observe que você pode, através do mesmo menu, para somente o Apache e deixar o resto funcionando, mas para você, iniciante, recomendo utilizar o exemplo do tutorial.
2) Configurando uma senha para o MySQL (através do PHPMyAdmin)
Por padrão, o MySQL vem sem senha e com um usuário ROOT, isto é, um usuário que tem acesso total ao seu banco de dados.
Clique uma vez com o botão esquerdo no WAMP, e clique em PHPMyAdmin.
Veja que a página não abrirá.
Aqui cabe uma explicação:
Por padrão, o programa acessa o atalho por http://localhost/phpmyadmin/, isso utilizando a porta 80, que é a padrão do Apache. Como você alterou a porta, você deverá adicionar 2380 nesse endereço, ficando:
http://localhost:2380/phpmyadmin.
Observe que localhost será o seu endereço interno para acessar o servidor.
Agora ficar abrindo página e adicionando porta é realmente chato.
A solução:
Vá na pasta de instalação do WAMP, abra o arquivo WAMPSERVER.ini e, com o WAMP fechado (botão direito > exit) procure por esta seção do arquivo:
[Menu.Left]
Type: separator; Caption: “WAMP5″
Type: item; Caption: “Localhost”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost/”; Glyph: 5
Type: item; Caption: “phpMyAdmin”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost/phpmyadmin/”; Glyph: 5
Type: item; Caption: “SQLiteManager”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost/sqlitemanager/”; Glyph: 5
Adicione agora as portas após o localhost, ficando, por exemplo, assim (colocarei apenas as linhas a serem alteradas):
Type: item; Caption: “Localhost”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost:2380/”; Glyph: 5
Type: item; Caption: “phpMyAdmin”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost:2380/phpmyadmin/”; Glyph: 5
Type: item; Caption: “SQLiteManager”; Action: run; FileName: “C:\WINDOWS\explorer.exe”; Parameters: “http://localhost:2380/sqlitemanager/”; Glyph: 5
Pronto, você modificou o atalho do programa para trabalhar na porta do seu Apache. Caso você não queira usar ele para acessar, basta abrir seu navegador favorito e digitar: http://localhost:suaporta/
Para acessar outras pastas criada na WWW, use:
http://localhost:suaporta/pasta_que_voce_quer/
Agora que o atalho foi corrigido, vamos colocar uma senha no seu MySQL.
Abra novamente o menu com um clique do botão esquerdo e esoclha PHPMyAdmin.
Clique em ‘Privilégios’ e no usuário ROOT clique em ‘Editar’ (uma pequena figura ao final da descrição do mesmo).
Adicione uma senha e salve.
Observe que agora seu PHPMYAdmin ficou trancado!
Nem você mesmo conseguirá acessar!
Para corrigir, com todos os serviços parados (Stop all services) acesse o arquivo config.inc.php que está na pasta PHPMyAdmin no diretório do WAMP e localize esta linha:
$cfg['Servers'][$i]['password'] = ”; // MySQL password (only needed
Inclua aqui mesma senha adicionada no painel do PHPMyAdmin.
Como exemplo, ficaria assim:
$cfg['Servers'][$i]['password'] = ‘SUASENHA’; // MySQL password (only needed
Pronto, seu MySQL está com senha (usuário ROOT) e o PHPMyAdmin voltou a funcionar!
Salve o arquivo e clique em ‘Star all Services’.
CONCLUÍDO!
Dica: Para adicionar banco de dados e usuários, basta clicar em ‘Privilégios’ e seguir os passos (selecione a opção liberar acesso do usuário a uma DB com o mesmo nome e caso não saiba o que esteja fazendo, não mexa nas informações de privilégios, para acabar não criando outro usuário com acesso completo ao seu MySQL).
—————————————————————–
Pronto, agora você tem instalado:
- Apache 2.x (mais novo)
- PHP 5.x (mais novo)
- PHPMyAdmin 2.x (mais novo)
- SQLiteManage 2.x (mais novo)
Para acessar seu site internamente:
Abra seu navegador favorito e digite: http://localhost:suaporta/suapasta/
Para acessar seu site via rede (intranet): http://iplocal:suaporta/suapasta/
Para acessar seu site externamente: http://seuip:suaporta/suapasta/
Reforçando novamente que o site deve ficar dentro da pasta WWW criada pelo programa WAMP (na verdade, é uma pasta criada originalmente pelo Apache, mas como esse programa integra todos os quatros sistemas apresentados no início desse tópico, digo que ‘foi ele’).
-> Outra dica: Redirecionador de DNS.
Muitos de vocês se perguntaram:
Mas poxa, toda vez que eu quiser passar algo para alguém ver, terei que passar para ela meu número IP mais a porta? (exemplo: http://200.217.64.98:2380/)
Realmente isso é um problema! Ainda mais para quem tem IP dinâmico, isto é, que se altera a cada nova conexão com a Internet.
Então, a saída é o seguinte:
Acesse o site: http://www.no-ip.org/
Faça o cadastro e faça o login no site.
Clique em ‘Manage’ e ‘Add a Host’ e ao abrir a página, escolha a opção: Port 80 Redirect.
Adicione seu IP, a porta usada pelo Apache e escolha um domínio a ser criado (por exemplo: seunome.no-ip.org ou seunome.servegame.com).
Após criado, aguarde aproximadamente 5 minutos para que o sistema configure o novo domínio.
Agora, ao invés de ter de digitar seu IP mais a Porta, apenas digite o novo endereço: http://seunome.servegame.com/, por exemplo. Ele irá redirecionar para seu IP e acessar a porta que você configurou automaticamente.
Para quem tem IP dinâmico, que muda toda hora, você terá que fazer uma das soluções a seguir atualizar seu IP no site:
1) Acessar o site fazê-lo manualmente ou;
2) Baixar o programa NO-IP DUC que fica aberto no sistema e atualiza de 5 em 5 minutos automaticamente seu IP.
NA SOLUÇÃO ACIMA BASTA APLICAR OS PROCEDIMENTOS DA ETAPA 3, ISSO É CLARO SE VOCÊ JÁ TIVER INSTALADO O WAMPSERVER. BOA SORTE. QUALQUER DÚVIDA, POSTE AI QUE A GENTE RESPONDE DENTRO DO POSSÍVEL.
ABRAÇO.
Olá Edgard e Daniel, acontece que além do Skype, o teamviewer, o IIS da MS, e agora pelo que o Daniel comentou, existe a configuração de uso da porta 80. Todos estes softwares acima atrapalham o início do servidor apache. Estou trabalhando com o XAMPP em 3 projetos diferentes e encontrei estes problemas, então na minha máquina pessoal, tenho que sair destes aplicativos que iniciam automaticamente no win. Outra coisa é muito simples também configurar o httpd.conf do apache para ele escutar outra porta, lembre-se que se você tiver o Tomcat instalado, ou pretende desenvolver em java pra web, você terá que instalá-lo, e por default ele roda na porta 8080, eu tenho jogado o apache na porta 9191 e não estou tendo problema. O único problema que encontrei foi ao fazer um server com as seguintes características:
- Windows Server 2008 R2 64bits
- Apache 2.2.14
- Xampp 1.7.7 RC9
- OCS Inventory server.
O problema é na hora que eu habilito o ldap, o windows não reconhece a dll do php_ldap.dll.
E ao tentar registrar as DLL´s deste serviço do php ele diz que não é válido pro serviço 32bits.
No windows 7 professional eu copiei as DLL´s dependentes do ldap para a pasta windows\system32 e funcionou normalmente, agora no 2008 dá erro e não inicia o serviço do Apache.
Alguém já passou por isso?
Atenciosamente,
Jesus
Olá Daniel muito obrigado por compartilhar essas informações com todos, há quase dois anos já tinha tentado de tudo tinha até desistido e agora foi de primeira.
Muito Obrigado.
Alex
Fico feliz em saber que lhe foi útil essa informação. Muito Obrigado pelo visita e volte sempre.
Falso n funfo aqui!
vlw cra muito bom funfo de boa aki.
Perfeito, funcionou corretamente, resolveu bem o problema de incompatibilidde q o Apache tem com o Win7 64 bitis.
Ei daniel pode me dizer onde localizar a “start” que voce falou para atribuir o valor “1″???
Amigo,
Peguei um exemplo em print da chave de registro do windows para ilustra melhor e adicionei a postagem.
Espero que lhe ajude.
Obrigado!
Valeu Daniel! Funcionou bem. Obrigado!