Estou trabalhando em um pequeno projeto PHP para um amigo meu e tenho uma configuração de ambiente WAMP para desenvolvimento local. Lembro-me dos dias em que a resposta do meu Apache 2.2 local era imediata. Infelizmente, agora que voltei de um longo, longo feriado, acho as respostas localhost
dolorosamente lentas.
Demora cerca de 5 segundos para obter uma página HTML 300B servida.
Quando olho para o gerenciador de tarefas, os httpd
processos (2) estão usando 0% da CPU e, em geral, meu computador não está sobrecarregado (0-2% de uso da CPU).
Por que a latência é tão alta? Existe alguma configuração do Apache que eu possa ajustar para talvez fazer com que seu thread seja executado com uma prioridade mais alta ou algo assim? Parece que está simplesmente dormindo antes de servir a resposta.
Para mim, definir a
ServerName
propriedadehttpd.conf
corrigiu os atrasos (eles eram de até 10 segundos na pior das hipóteses):Eu tive o mesmo problema.
Definir o redirecionamento localhost para 127.0.0.1 no arquivo hosts não ajudou. Otimizar o servidor MySQL não ajudou (InnoDB -> MyISAM, alterando muitas diretivas relacionadas ao cache em my.ini).
Então eu usei o webgrind e reduzi o problema para a chamada "novo PDO(...)". Mudando
para
em dsn para PDO resolveu completamente o problema ! O tempo de carregamento da página passou de mais de 3.000 ms para 16 ms .
No entanto, estou realmente confuso porque a linha "127.0.0.1 localhost" no arquivo hosts não ajudou.
O problema era com o arquivo de configurações principal do Apache
httpd.conf
.Eu achei isto:
E então entrei nas configurações do Apache e vi onde estava o problema: eu o configurei como CGI, em vez de carregá-lo como um módulo. Isso fazia
php-cgi.exe
com que iniciasse e desligasse toda vez que eu fazia uma solicitação. Isso estava retardando meulocalhost
desenvolvimento.Alterei as configurações para carregar o PHP como um MODULO Apache e agora tudo funciona perfeitamente. :)
Obrigado a todos por seus esforços.
Verifique se
/etc/hosts
está correto. Assim:No local
****
dê seu nome de host.Eu tive o mesmo problema e finalmente descobri que estava vindo de dois fatos:
http://myproject.local/
porque coloquei uma linha127.0.0.1 myproject.local
no/etc/hosts
O problema aparece porque o
.local
tld é reservado para o serviço Bonjour, e isso desde o Mac OS X Lion (10.7).Alterar o tld para outra coisa resolveu o problema.
Em seu
httpd.conf
certifique-se de definir a configuraçãoHostnameLookups Off
.Caso ajude alguém, tive esse problema e se resumia a uma pesquisa de DNS incorreta .
O servidor DNS no servidor foi definido como
127.0.0.1
- eu o alterei para usar os servidores DNS públicos do Google, e isso o tornou muito mais rápido.A pergunta tem uma tag apache-2.2, mas se alguém for afetado por esse problema nefasto também no WAMP com Apache 2.4 + PHP 5.5 , a seguinte resposta no SO funcionou para mim:
https://stackoverflow.com/a/18786773/260080