系统:
RHEL6.5
版本说明:
Python-3.5.0
Django-1.10.4
virtualenv:为每一个项目创建不一样的/独立的Python环境,你将为每一个项目安装全部须要的软件包到它们各自独立的环境中。python
yum install openssl-devel gcc zlib -y
wget http://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
mkdir /usr/local/python3
解压编译安装:sql
tar -xzvf Python-3.5.0.tgz cd Python-3.5.0 ./configure --prefix=/usr/local/python3 make && make install
安装完后面会显示:数据库
...... Collecting setuptools Collecting pip Installing collected packages: setuptools, pip Successfully installed pip-7.1.2 setuptools-18.2
在3.5里面,就不用再手动去安装pip和setuptools了,自动安装django
mv /usr/bin/python /usr/bin/python2
创建新版本的python连接和pip连接:bootstrap
ln -s /usr/local/python3/bin/python3 /usr/bin/python ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
[root@django2 ~]# python -V Python 3.5.0
引起的问题
yum使用报错:vim
[root@django2 ~]# yum install vim -y File "/usr/bin/yum", line 30 except KeyboardInterrupt, e: ^ SyntaxError: invalid syntax
解决方案
修改/usr/bin/yum
第一行以下:api
#!/usr/bin/python2
pip install virtualenv
[root@django2 ~]# virtualenv ~/pythonproject/virtualenv/blog --no-site-packages Using base prefix '/usr/local/python3' New python executable in /root/pythonproject/virtualenv/blog/bin/python3.5 Also creating executable in /root/pythonproject/virtualenv/blog/bin/python Installing setuptools, pip, wheel...done.
[root@django2 bin]# pwd /root/pythonproject/virtualenv/blog/bin [root@django2 bin]# source activate (blog) [root@django2 bin]#
出现前面的(blog)则运行成功!浏览器
(blog) [root@django2 ~]# pip install django
(blog) [root@django2 blog]# pwd /root/pythonproject/virtualenv/blog (blog) [root@django2 blog]# django-admin startproject cherry04 (blog) [root@django2 blog]# cd cherry04/ (blog) [root@django2 cherry04]# django-admin startapp blog
cherry04:项目名
blog:应用名session
(blog) [root@django2 cherry04]# python manage.py runserver ....... File "/root/pythonproject/virtualenv/blog/lib/python3.5/importlib/__init__.py", line 126, in import_module return _bootstrap._gcd_import(name[level:], package, level) File "/root/pythonproject/virtualenv/blog/lib/python3.5/site-packages/django/db/backends/sqlite3/base.py", line 39, in <module> raise ImproperlyConfigured("Error loading either pysqlite2 or sqlite3 modules (tried in that order): %s" % exc) django.core.exceptions.ImproperlyConfigured: Error loading either pysqlite2 or sqlite3 modules (tried in that order): No module named '_sqlite3'
出现如上报错,没有sqlite3这个模块app
(blog)[root@django2 bin]# pwd /root/pythonproject/virtualenv/blog/bin (blog) [root@django2 bin]# deactivate [root@django2 Python-3.5.0]# pwd /root/Python-3.5.0 [root@django2 Python-3.5.0]# ./configure --prefix=/usr/local/python3 [root@django2 Python-3.5.0]# make && make install
这个错误若是能在一开始避免最好,后面就不用再从新编译安装了
注:
sqlite
:是很是著名的开源嵌入式数据库软件,它能够嵌入到其余程序中使用,而且提供SQL接口用来查询,很是方便
pysqlite
: 是一个 sqlite 为 Python 提供的 api 接口,它让一切对于 sqlite 的操做都变得异常简单
可是从python2.5版本之后,pysqlite就已经被包含到标准库中,只须要安装sqlite3便可,但以前的版本则须要两个都安装,不然会报错
[root@django2 bin]# pwd /root/pythonproject/virtualenv/blog/bin [root@django2 bin]# source activate (blog) [root@django2 cherry04]# python manage.py runserver Performing system checks... System check identified no issues (0 silenced). You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions. Run 'python manage.py migrate' to apply them. December 18, 2016 - 20:43:42 Django version 1.10.4, using settings 'cherry04.settings' Starting development server at http://127.0.0.1:8000/
python manage.py runserver 0.0.0.0:8000
环境配置至此完成!Good luck!
本文为原创,转载请注明出处