Apache - Prefork and Worker
<p>I am trying to build a Python Web Application using Django. On it's official "<a href="https://docs.djangoproject.com/en/1.10/topics/install/" rel="nofollow">how-to-install</a>" page, it says Apache and mod_wsgi must be installed. </p>

<p>I have manually installed, in my Ubuntu machine, Apache 2.2.31 HTTP Server at the location </p>

<blockquote>
  <p><code>/usr/local/apache</code></p>
</blockquote>

<p>I am looking up for the instructions for installing mod_wsgi from <a href="https://pypi.python.org/pypi/mod_wsgi" rel="nofollow">https://pypi.python.org/pypi/mod_wsgi</a></p>

<p>On this site, it says for "system requirement" that the apache prefork or worker mpm along with its respective developer variant needs to be installed. </p>

<p>After executing the following command, </p>

<blockquote>
  <p><code>/usr/local/apache/bin/apachectl -V</code></p>
</blockquote>

<p>I am getting many outputs, one of which says that the MPM Server is "Prefork".</p>

<p>So, my conclusion is that MPM Servers are prepackaged with Apache. </p>

<p>Now, my questions are</p>

<p>1) How to change the MPM Server from "Prefork" to "Worker"?</p>

<p>2) Since I have manually installed Apache, how to install the developer variant of the MPM Server? If it is already installed, how to verify it? </p>

<p>You are worrying about two things that you absolutely do not need to worry about.</p>

<p>Firstly, on that Django page, it explicitly states that to begin development you do not need to install any server. It suggests that you will need mod_wsgi when you come to deploy to your production server, although goes on to state that other deployment options are available such as uwsgi (personally I prefer gunicorn, but never mind). To be honest that page could do with a bit of rewording to make this clearer, though.</p>

<p>Secondly, that mod_wsgi page talks about compiling it from scratch. Even when you do come to deploy, there is almost never any need to do that. Since you are using Ubuntu, you can install it with aptitude:</p>

<pre><code>sudo apt-get install libapache2-mod-wsgi
</code></pre>

python django apache mod-wsgi