"Nessun MPM caricato", ma non sto nemmeno usando mpm


10

Esecuzione di Apache2 su Ubuntu Precise64 in Vagrant. Quando provo ad avviarlo, dice:

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.

Ma il fatto è che il mio /etc/apache2/apache2.conffile non richiede MPM da nessuna parte! Vorrei incollarlo qui ma sarebbe un post enorme ...

Ho provato a cercare il registro degli errori, ma non riesco a trovarlo da nessuna parte. Aiuto?

Modifica: apache2 -l dà questo:

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                    

Quindi sembra che nessun mpm sia installato, giusto? Se nessun MPM installato e nessun MPM menzionato nel mio file di configurazione, perché vedo ancora questo errore?


1
Qual è l'output di dpkg -l 'apache2-mpm *'
sciurus

per me è stato sufficiente eliminare, reinstallare e copiare i vecchi file di configurazione, qualunque fosse il colpevole;)
Melissa Loos,

Risposte:


10

apache2 -t -D DUMP_MODULES (o -M) dovrebbe fornirti un elenco di moduli. Dovresti vedere worker.c o prefork.c o event.c. Usa questo per determinare quale MPM stai usando.

Cerca nei tuoi file di configurazione se c'è qualcosa del genere (se usi prefork MPM).

Ecco un esempio:

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

Aggiungi un blocco come questo al tuo file di configurazione e dovrebbe funzionare. Verifica che apache2-mpm-prefork (o worker o evento) sia installato correttamente.

Leggi questa documentazione per aiutarti a scegliere (è obbligatorio) il MPM appropriato per il tuo utilizzo: http://httpd.apache.org/docs/2.2/mpm.html


Aggiornata la domanda originale con l'output del comando ... Sembra che non ci sia affatto un modello mpm, quindi non capisco perché vedo l'errore. Qualche idea?
ezuk,

1
Devi scegliere un modulo MPM, è obbligatorio.
Vinz,

Ciao @Vinz. In realtà ho lo stesso problema (Ubuntu 13.10, Apache 2.4.6) e ho provato la tua soluzione. Mi mancava quel blocco nel mio file di configurazione, ma aggiungerlo non ha risolto il problema. Altre idee? Sono un po 'perso qui.
Itai Bar-Haim,

@ ItaiBar-Haim: qual è il messaggio di errore dopo aver aggiunto questo blocco?
Vinz,

@Vinz è stato lo stesso errore. Tuttavia ho scoperto che quando uso la configurazione predefinita di Apache e non provo a sovrascriverla in alcun modo le cose sembrano funzionare.
Itai Bar-Haim,

10

Ho avuto lo stesso problema. Ho sovrascritto per errore /etc/apache2/apache2.conf. Per correggere, ho dovuto correre sudo apt-get purge apache2per rimuovere completamente apache e quindi eseguire sudo apt-get install apache2per ripristinare il apache2.conffile originale .

NOTA : eseguire il backup di tutti i file personalizzati /etc/apache2/sites-availableprima di eliminare.


Ho avuto un problema simile con l'esecuzione di Vagrant e risulta che avevo accidentalmente cancellato tutto il contenuto in apache2.conf. Un po 'più facile da ripristinare però vagrant destroy && vagrant up.
forsvunnet,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.