"Sem MPM carregado", mas nem estou usando mpm


10

Executando o Apache2 no Ubuntu Precise64 no Vagrant. Quando tento iniciá-lo, ele diz:

vagrant@precise64:/etc/apache2$ /etc/init.d/apache2 start
 * Starting web server apache2
 *
 * The apache2 configtest failed.
Output of config test was:
AH00534: apache2: Configuration error: No MPM loaded.
Action 'configtest' failed.
The Apache error log may have more information.

Mas o problema é que meu /etc/apache2/apache2.confarquivo não chama MPM em lugar nenhum! Gostaria de colá-lo aqui, mas faria um post enorme ...

Tentei procurar no log de erros, mas também não consigo encontrá-lo. Socorro?

Edit: apache2 -l dá o seguinte:

vagrant@precise64:/$ apache2 -l  
Compiled in modules:             
  core.c                         
  mod_so.c                       
  mod_watchdog.c                 
  http_core.c                    
  mod_log_config.c               
  mod_logio.c                    
  mod_version.c                  
  mod_unixd.c                    
  mod_unixd.c                    

Parece que nenhum mpm está instalado, certo? Se nenhum MPM instalado e nenhum MPM mencionado no meu arquivo de configuração, por que ainda estou vendo esse erro?


1
Qual é a saída do dpkg -l 'apache2-mpm *'
sciurus

para mim foi suficiente para remoção, reinstalação e copiar os antigos arquivos de configuração, qualquer que seja o culpado era;)
Melissa Loos

Respostas:


10

apache2 -t -D DUMP_MODULES (ou -M) deve fornecer uma lista de módulos. Você deve ver worker.c ou prefork.c ou event.c. Use isso para determinar qual MPM você está usando.

Procure nos seus arquivos de configuração se houver algo parecido (se você usar o MPM prefork).

Aqui está um exemplo:

<IfModule mpm_prefork_module>
StartServers          5
MinSpareServers       5
MaxSpareServers      10
MaxClients          150
MaxRequestsPerChild   0
</IfModule>

Adicione um bloco como este ao seu arquivo de configuração e ele deve funcionar. Verifique se o apache2-mpm-prefork (ou worker, ou event) está instalado corretamente.

Leia esta documentação para ajudá-lo a escolher (é obrigatório) o MPM apropriado para seu uso: http://httpd.apache.org/docs/2.2/mpm.html


Atualizada a pergunta original com a saída do comando ... Parece que não há modelo mpm, portanto não entendo por que estou vendo o erro. Qualquer ideia?
ezuk

1
Você deve escolher um módulo MPM, é obrigatório.
Vinz 18/10

Olá @Vinz. Na verdade, tenho o mesmo problema (Ubuntu 13.10, Apache 2.4.6) e tentei sua solução. Estava faltando esse bloco no meu arquivo de configuração, mas adicioná-lo não resolveu o problema. Alguma outra ideia? Estou meio perdido aqui.
Itai Bar-Haim

@ ItaiBar-Haim: Qual é a mensagem de erro após adicionar este bloco?
Vinz #

@ Vinz, foi o mesmo erro. No entanto, descobri que quando uso a configuração padrão do Apache e não estou tentando substituí-la de forma alguma as coisas parecem funcionar.
Itai Bar-Haim

10

Eu tive o mesmo problema. Eu acidentalmente substitui /etc/apache2/apache2.conf. Para corrigir, tive que executar sudo apt-get purge apache2para remover completamente o apache e depois executar sudo apt-get install apache2para recuperar o apache2.confarquivo original .

NOTA : Faça backup de todos os arquivos personalizados /etc/apache2/sites-availableantes de limpar.


Eu tive um problema semelhante ao executar o Vagrant e, por acaso, apaguei acidentalmente todo o conteúdo do apache2.conf. Um pouco mais fácil de reverter embora vagrant destroy && vagrant up.
forsvunnet
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.