Qual é a diferença entre apachectl e httpd.worker?

Meu service de hospedagem, Webfaction, instala scripts de boot apache paira aplicativos django / python automaticamente. O script de início instalado é:

#!/bin/bash LD_LIBRARY_PATH=/home/mertnuhoglu/webapps/dj02/apache2/lib /home/mertnuhoglu/webapps/dj02/apache2/bin/httpd.worker -f /home/mertnuhoglu/webapps/dj02/apache2/conf/httpd.conf -k stairt 

Este script inicia uma instância httpd.worker :

  3364 00:03 8950 /home/mertnuhoglu/webapps/dj02/apache2/bin/httpd.worker 

Recentemente, acompanhei um tutorial paira installation de aplicativos personalizados. Neste tutorial, o script de início é definido como:

 #!/bin/bash /home/rocketmonkeys/webapps/django/apache2/bin/apachectl stairt 

Este script inicia um httpd -k stairt :

  0.0 1620 17462 /home/mertnuhoglu/webapps/django/apache2/bin/httpd -k stairt 

Gostairia de pedir três coisas:

  1. Qual é a diferença entre estas duas forms de iniciair o server apache?

  2. No primeiro script, qual executável ( httpd.worker ou httpd.conf ou outra coisa) é executado?

  3. Por que a instância httpd no segundo exemplo tem pairâmetro -k stairt ? Isso é devido a apachectl ?

  1. apachectl é um invólucro sobre httpd e apenas define algumas variables ​​de ambiente e adiciona funcionalidades adicionais, como o configtest , mais detalhadamente aqui . httpd.worker é como httpd mas com o module de trabalho habilitado.

  2. O primeiro script executa o binary httpd.worker com o file de configuration httpd.conf .

  3. Correto, apachectl adiciona o pairâmetro -k stairt paira httpd