¿Cómo puedo reconstruir mi mod_wsgi para usar python 2.7.3?

Estoy usando mod_wsgi para servir un sitio web de django, pero tengo un error interno del servidor. Aquí está el registro de apache:

[Fri May 31 10:11:25 2013] [error] python_init: Python version mismatch, expected '2.7.2+', found '2.7.3'. [Fri May 31 10:11:25 2013] [error] python_init: Python executable found '/usr/bin/python'. [Fri May 31 10:11:25 2013] [error] python_init: Python path being used '/usr/lib/python2.7/:/usr/lib/python2.7/plat-linux2:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload'. [Fri May 31 10:11:25 2013] [warn] mod_wsgi: Compiled for Python/2.7.2+. [Fri May 31 10:11:25 2013] [warn] mod_wsgi: Runtime using Python/2.7.3. [Fri May 31 10:11:25 2013] [notice] Apache/2.2.22 (Ubuntu) DAV/2 mod_fcgid/2.3.6 mod_python/3.3.1 Python/2.7.3 mod_ssl/2.2.22 OpenSSL/1.0.1 mod_wsgi/3.3 mod_perl/2.0.5 Perl/v5.14.2 configured -- resuming normal operations 

Así que parece que hay una discrepancia entre la versión mod_wsgi y la versión en tiempo de ejecución de python. ¿Cómo puedo actualizar esto?

Tienes que comstackr mod_wsgi desde la fuente y reinstalar.

Muy probablemente tan simple como:

 $ ./configure $ make $ sudo make install 

La documentación de mod_wsgi cubre esto en detalle.

No tuve que comstackr desde la fuente, esto me ayudó:

 $ apt-get remove libapache2-mod-python libapache2-mod-wsgi $ apt-get build-dep libapache2-mod-python libapache2-mod-wsgi 

Recuerde verificar que los archivos wsgi.load y wsgi.conf aún estén referenciados en la configuración de apache2. Para Ubuntu (y probablemente Debian) eso significa tener un enlace simbólico desde / etc / apache2 / mods-available a / etc / apache2 / mods-enabled.

Tenía el mismo problema, resuelto demandando entornos virtuales.

Para configurar: https://www.digitalocean.com/community/tutorials/how-to-run-django-with-mod_wsgi-and-apache-with-a-virtualenv-python-environment-on-a-debian- vps Simplemente siguió los mismos pasos, configura un virtualenv en la misma carpeta que mi aplicación django.

Terminó con la siguiente configuración de host virtual:

  Allow from all Order deny,allow   Allow from all Order deny,allow  WSGIScriptAlias / /storage/sandbox/www/django/sampleapp/sampleapp/wsgi.py WSGIPythonPath /storage/sandbox/www/django/sampleapp/:/storage/sandbox/www/django/env/lib/python2.7/site-packages   Allow from all Order deny,allow