python3.8安装django_CentOS6中Python3和Django的安装配置

刚好这段时间闲着有时间也就学学python算是充电了,我选择的是virtualBox中安装CentOS6.5的环境,系统自带的python是2.6.6,因此单独安装了python3.3的版本。安装过程参考了博文: http://www.xenme.com/919。

安装python3

由于系统的yum是依赖python2.6的,所以我采取的是单独安装python3的方式(而非替换)。

1,安装前准备。

在开始安装python3之前需要安装下列lib,这些是安装pip和Django时会依赖的包,没有安装导致pip和django的安装报错(比如找不到解压的库zlib),解决办法是回来装这些lib并重新编译和安装python(make && make install)。执行命令:

yum install libbz2

yum install readline-devel

yum install sqlite-devel

yum install zlib-devel

yum install openssl-devel

在成功安装如上的lib后,编译python时会自动加入这些lib到site-packages中。其效果与另外一种方式——在配置pythons的时候添加参数--with-pkgname一致(./configure –with-zlib),只是我还没找全这些pkg的名字。

2,下载和安装python。     可以直接从python.org下载最新的版本,通过configure命令配置然后编译并执行即可。

2.1,在此之前需要确认你的系统有c的编译器,否则安装时会报类似“can not find a c compiler"的提示,那么需要先来个gcc。

#安装gcc

yum install gcc

2.2下载和安装

wget -P /yourdirectory http://python.org/ftp/python/3.3.3/Python-3.3.3.tgz

tar -xvf Python-3.3.3.tgz

##cd into your python3's sources unpackaged dir

##set python3's installed path is /var/python3

./configure --prefix=/var/python3

make && make install

3,替换系统路径默认python连接。

至此完成python3的安装。接下来要替换Linux系统classpath下的python连接(symbol link)指向python3/bin/python3.3文件。这样做的目的是在系统任意目录敲入python调用的是python3的命令,而非系统默认2.6.6的,同时这会导致依赖python2.6的yum不能使用,因此还要修改yum配置。

3.1,建立到python3的连接

##删除原有连接

rm /usr/bin/python

##建立新链接

ln -s /var/python3/bin/python3.3 /usr/bin/python

至此执行python -V命令将看到python默认版本已经是3.3了。 3.2,更新yum配置。这时/usr/bin目录下面是包含以下几个文件的(ll |grep python),其中python2本是原来python连接指向的位置,因此只需要指定yum配置的python指向这里即可。

-rwxr-xr-x.   1 root root     5862386 Jan  7 16:32 python

-rwxr-xr-x.   3 root root        3592 Nov 22 20:11 python2

-rwxr-xr-x.   3 root root        3592 Nov 22 20:11 python2.6

vim /usr/bin/yum

通过vim修改yum的配置#!/usr/bin/python改为#!/usr/bin/python2,保存退出。完成了python3的安装。

安装pip

pip是根据官网wiki安装的,地址点击这里。

1,安装setuptools。pip安装前需要先安装setuptools,在上面的页面中给出了下载地址。下载并执行即可:

wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py

python ez_setup.py

2,在完成setuptools后可能的场景有两种:你安装了setuptools并同时装上了pip的某个版本或者是你只安装了setuptools,我是后者(好像向来都比较悲催),具体是哪个场景你执行下pip命令就知道了。如果和我一样那么下载get_pip.py脚本并执行。

wget https://raw.github.com/pypa/pip/master/contrib/get-pip.py

python get-pip.py

pip安装后执行pip依然无法找到命令,细看pip安装的提示信息发先安装到了python3下面,这里肯定不是系统的classpath目录。如下:

Installing pip3 script to /var/python3/binInstalling pip3.3 script to /var/python3/bin

Installing pip script to /var/python3/bin

Successfully installed pip

解决办法就是简单地建立连接到系统的classpath目录之一: ln /var/python3/bin/pip /usr/bin/pip。不过这里也可以看出有可能我没那么悲催而可能是pip和setuptools一并安装了,但是目录不对。

3,按照pip的说法,最后执行

pip install --upgrade setuptools 更新到最近的setuptools,至此pip按照完毕。

安装git:

执行并根据提示一路next,安装完成后执行git --help测试是否安装成功。需要说明git的安装不是必须的(最终我也没用,因为在国内呵呵),除非你希望始终保持最新发布的django代码,否则可以忽略。

yum install git

安装django     有了pip,这件事变得非常简单,只需要一个命令即可。需要说明的是和上面的问题一样,你需要在系统classpath目录下建立到django-admin.py的连接。

pip install django

#after django being installed

ln -s /var/python3/lib/python3.3/site-packages/django/bin/django-admin.py /usr/bin/django-admin.py

#这里视你的django安装位置而定——一般是python的site-packages下。

执行后django安装完成。下面建立一个演示的website,参考来自django的指导,通过执行命令 django-admin.py startproject mysite

建立一个名为mysite的工程其结构如下: mysite/

manage.py

mysite/

__init__.py

settings.py

urls.py

wsgi.py     外层的mysite:    仅仅是工程的容器,叫什么名字没关系。

manage.py:        一个命令行的工具类用于和你的工程交互。

内层mysite:      实际的python package。

__init__.py:        空文件,它的存在是为了表明这是一个python package。

settings.py:       Django的配置文件。

urls.py:           简单的说就是用于url派发的配置。

wsgi.py:            用于和wsgi server连接的接入点,商用部署时用到的server。

到现在django的安装和工程已经建立,可以启动django开发的服务器了。django警告这个内置的server只适合开发用而非商用是没有安全保护的。执行以下命令启动django:

python manage.py runserver

这时候如果你是直接在linux主机上访问的那么已经可以通过localhost:8000来访问了,如果和我一样通过vbox启动的linux并想在自己的物理机上访问暂时是行不通的。可以通过命令python manage.py runserver 0.0.0.0:8000是django server监听public ip以便从外面访问,除此以外还要在virtual box中设置端口映射。

修复python2     由于手贱在第一创建python3的symbol link时误删除了/usr/bin/python2这个文件,导致yum不能使用,着实着急了好半天才找到解决办法。是在某篇博客上看到的解决办法——重装相关的rpm文件。所有的rpm文件可以在网易提供的景象中下载,应该是国内比较快的地方了,地址:http://mirrors.163.com/centos/6.5/os/i386/Packages/。rpm列表如下:

python-2.6.6-29.el6.x86_64.rpm

python-devel-2.6.6-29.el6.x86_64.rpm

python-iniparse-0.3.1-2.1.el6.noarch.rpm

python-setuptools-0.6.10-3.el6.noarch.rpm

python-urlgrabber-3.9.1-8.el6.noarch.rpm

rpm-python-4.8.0-19.el6.x86_64.rpm

yum-3.2.29-22.el6.centos.noarch.rpm

yum-metadata-parser-1.1.2-16.el6.x86_64.rpm

python-pycurl-7.19.0-8.el6.x86_64.rpm     注意rpm命令,必须要追加 –replacepkgs 参数,强制其重新安装,否则rpm会报告说package已安装。

rpm -Uvh --replacepkgs ***.rpm

至此打完收工:)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值