né le impostazioni prefork né worker si trovano in /etc/apache2/apache2.conf - perché?


10

Ho appena installato Apache 2.4.7 (Ubuntu) sul mio sistema Ubuntu 14.04 LTS e non riesco a vedere né le impostazioni di prefork né worker in /etc/apache2/apache2.conf. Inoltre, non sono definiti per l'host virtuale predefinito. Devo impostarli io stesso in apache2.conf in questo modo?

<IfModule mpm_prefork_module>
    StartServers 2
    MinSpareServers 2
    MaxSpareServers 5
    MaxClients 200 #must be customized
    ServerLimit 200 #must be customized
    MaxRequestsPerChild 100
</IfModule>

Risposte:


10

Ubuntu 14 organizza tutte le configurazioni specifiche del modulo in file separati sotto /etc/apache2/mods-available/, quindi ora si trova la roba di prefork MPM/etc/apache2/mods-available/mpm_prefork.conf


4

Hai cercato queste impostazioni all'interno /etc/apache2/conf.d/? È probabile che queste impostazioni siano mantenute in file inclusi separati per facilitare l'imballaggio.

Devo impostarli io stesso in apache2.conf in questo modo?

<IfModule mpm_prefork_module>
    StartServers 2
    MinSpareServers 2
    MaxSpareServers 5
    MaxClients 200 #must be customized
    ServerLimit 200 #must be customized
    MaxRequestsPerChild 100
</IfModule>

Sì, puoi inserirli in apache2.conf (anche se cercali in altri file conf.d/come sopra menzionato).

Il tuo MaxRequestsPerChild sembra molto basso - questo può essere in migliaia.

Se stai eseguendo mod_php, MaxClients dovrebbe essere ridotto in modo significativo, a meno che tu non abbia molti concerti di RAM.


Grazie per la tua risposta. La mia installazione di Apache non ha conf.dal /etc/apache2/. Come è possibile?
Maxim Koretskyi,

Siamo spiacenti, questo è quello che ottengo scrivendo questa risposta senza testare il 14.04. Ho solo il 12.04. O hanno cambiato le directory di configurazione di Apache o sta succedendo qualcos'altro :)
thomasrutter,

OK, aspetteremo che qualcuno chiarisca la questione :). Potete per favore approfondire questo Your MaxRequestsPerChild seems very low - this can be in the thousands. If you are running mod_php your MaxClients should be lowered significantly, unless you have many gigs of RAM.?
Maxim Koretskyi,

Il valore predefinito MaxRequestsPerChild è 10000, il che significa che un processo verrà riavviato solo una volta ogni 10.000 richieste per processo. Se lo si trascina su 100 sembra che ciò danneggerebbe solo le prestazioni a meno che non si verifichi un problema specifico come una perdita di memoria errata. E per MaxClients, con mod_php potresti dover abbassare questo valore dal suo valore predefinito perché ogni processo è così grande, a meno che tu non abbia molti Gigabyte di RAM.
thomasrutter,
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.