1. 安装Python: Python2.7
本来系统里已经自带了Python2.6, 为了我的追求极致,装逼的完美主义,我又安装了Python3.4. 并且把 /usr/local/bin/python 直接指向Python3.4. 将其设为python的主要程序。
此处就为悲剧的根源了。因为Python3 和 mod_wsgi 不兼容 (注:至少到现在我还没有找到能用使用python3 来安装的wsgi),我安装的时候直接使用 ./Configure make makeinstall 命令,导致系统先择了将apache 的python版本设置成了python2.6. (注:wsgi: 即为 the python web server gateway interface, 其作用就是apache能通过它来连接并使用Python)
但是由于我的django是用Python3安装的。最终导致apache根本就连接不上django, 我查询httpd下的error_log来回无数遍,终于发现httpd使用的是python2.6。所以只能果断使用python2了, 但是新的问题又出现了,因为下载的django版本过高,python2.6安装不了,所以最终结果就是:安装python2.7!
命令:
tar -xvf Python-2.7.10.tgz
cd Python-2.7
./configure --enable-shared
make
make install
可能遇到问题:python: error while loading shared libraries: libpython2.7.so.1.0:
cannot open shared object file: No such file
原因: python2.7 的库找不到了
解决方案:1. 进入/etc/ld.so.conf.d/,
2. 新建文件:vim python2.7.conf
3. 添加python2.7的库的所在路径: /usr/local/lib
4. 保存并退出,然后执行命令:ldconfig
2. 安装django: Django-1.8.3
直接进入安装包文件夹使用python安装
tar xzvf Django-1.8.3 .tar.gz
cd Django-1.8.3
sudo python setup.py install
<Directory "/var/www/html/mysite/mysite">
Order Allow,Deny
Allow from all
<Files wsgi.py>
Order allow,deny
Allow from all
</Files>
</Directory>
4-3. 配置wsgi文件
一般django生成项目时会自动帮你配置好wsgi.py文件。不需要自己配的,前提是你的wsgi得装好了。我的/var/www/html/mysite/mysite/wsgi.py 内容如下:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()