Django部署:配置apache / mod_wsgi使用的正确python

时间:2016-04-10 12:51:58

标签: python django apache mod-wsgi django-wsgi

我不熟悉使用基于Django的应用程序,并尝试使用以下配置部署django项目,这几乎与django docs上的默认配置类似。

apache2.conf

# WSGI Configuration
WSGIDaemonProcess demo python-path=/home/inian/Documents/demo
WSGIProcessGroup demo

WSGIScriptAlias / /home/inian/Documents/demo/demo/wsgi.py process-group=demo

<Directory /home/inian/Documents/demo/demo>
<Files wsgi.py>
    Require all granted
</Files>
</Directory>

# Serving static files
Alias /static/ /home/inian/Documents/demo/static/

<Directory /home/inian/Documents/demo/static>
    Require all granted
</Directory>

当我启动apache服务器时,它正常启动但由于python版本不匹配,因此加载我的项目时出现运行时错误。

/var/log/apache2/error.log

[Sun Apr 10 20:38:16.165536 2016] [wsgi:warn] [pid 22959] mod_wsgi: Compiled for Python/2.7.11.
[Sun Apr 10 20:38:16.165551 2016] [wsgi:warn] [pid 22959] mod_wsgi: Runtime using Python/2.7.10.
[Sun Apr 10 20:38:16.166787 2016] [mpm_prefork:notice] [pid 22959] AH00163: Apache/2.4.7 (Ubuntu) OpenSSL/1.0.1f mod_wsgi/4.5.1 Python/2.7.10 configured -- resuming normal operations

我希望我的应用程序使用位于版本/usr/local的{​​{1}}位置安装的python,这是我用来编译和安装2.7.11的那个,但为了安全我还检查了mod_wsgi,其输出为/usr/bin/python -V。这可以用于两个问题:

  1. 如何指示apache从安装位置Python 2.7.6使用Python 2.7.11(我一直使用它作为服务器上所有内容的默认设置)。

  2. 我不记得曾经使用2.7.10安装或做任何事情,所以我不知道apache如何以及从何处加载和使用它。如果有人可以指导我,那么它也会很棒。

0 个答案:

没有答案