Estou solucionando problemas em um aplicativo de upload de arquivos urgente e suspeito que o problema pode ser devido à KeepAliveTimeout
diretiva do Apache. Acabei de ligar para o suporte de hospedagem e perguntei qual era a configuração. Eles me disseram que "não é informação publicamente disponível". Tenho acesso shell ao servidor de hospedagem compartilhada.
A busca por httpd.conf
termina sem sucesso.
Existe uma maneira de descobrir qual é o valor do valor da diretiva sem ter acesso httpd.conf
?
Responder1
Tentar httpd -V
. Isso mostrará onde o Apache está procurando por arquivos de configuração. Você está procurando algo como:
-D SERVER_CONFIG_FILE="conf/httpd.conf"
Existe uma opção para mostrar configurações, mas atualmente não é muito útil:-S Show the settings as parsed from the config file (currently only shows the virtualhost settings).
Se você tiver acesso às configurações do vhost, poderá definir TimeOut
você mesmo:
http://httpd.apache.org/docs/2.2/mod/core.html#timeout
Espero que ajude.
Responder2
Apache e NGinx usam 5 minutos como tempo limite padrão de keepalive.
Provavelmente você não tem acesso a essas informações - elas estariam contidas no arquivo de configuração do servidor - normalmente não acessíveis aos clientes se a empresa de hospedagem estiver remotamente atenta. Você pode descobrir qual servidor com ferramentas de rede simples como o nmap.
Você poderia usar o telnet talvez:
telnet host 80
uma vez no telnet, tente:
get / HTTP/1.0
Na resposta procure a linha que começa
Server:
Você pode listar o processo do servidor com 'ps ax' - você pode ou não receber uma lista completa. O Apache aparece como apache2 atualmente ou talvez como httpd, dependendo do tipo do sistema operacional.
Usando curl, você poderá criar uma linha de comando que exercitará o tempo limite de manutenção de atividade e provará isso de uma forma ou de outra. Não sei no momento como isso seria, infelizmente.