如何在Linux上部署一个简单的Django项目

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u012561176/article/details/85229407

参考文章:https://blog.csdn.net/a249900679/article/details/51527200

1、首先,在根目录底下建一个目录,存放python3.6.3版本,linux自带的为python2版本,命令如下:

mkdir python3.6.3 
cd python3.6.3

2、接着,使用下面的命令下载Python-3.6.3.tar.xz的安装包,对应版本可以去 https://www.python.org/ftp/python/ 对应起来:

wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz

3、接着解压这个压缩包,命令如下:

tar xvf Python-3.6.3.tar.xz

4、接着编译安装,进入解压后的目录,执行底下的一个shell脚本configure进行检查,接着编译安装,编译安装过程有点慢,命令如下:

cd Python-3.6.3
./configure
make && make install

5、之后输入命令python3,发现安装成功:

6、但是当输入python –V时,发现python版本还是2.7,那是因为没有把python快捷链接的还是原来的python2.7版本,我们要改一下:

(1)、先备份python,命令如下: 

mv /usr/bin/python /usr/bin/python2.7.bak

这里插一句,备份后要删除,不然会报错

(2)、删除旧的python的软连接,创建新的python2和python3的软连接,命令如下:

cd /usr/bin   
rm -f python2
ln -s python2.7 python2

(3)、链接到python3.6.3,命令如下:

ln -s /usr/local/bin/python3 /usr/bin/python

注:这里如果执行命令错误的话,会说不存在python这个目录,可以新建一个目录,后面再删掉,之后再重新执行命令即可

之后运行Python即是指向python3.6.3版本了:

(4)、到这里还有一个问题,就是python3.6.3安装完成后,你会发现yum用不了了,这是yum用的是原来2.7的版本,而刚刚我们把python改为3.6.3了,所以用不了了,需要编辑yum文件:

vi /usr/bin/yum

按Insert键,把第一行的usr/bin/python改成/usr/bin/python2.7

Esc->:wq保存,就可以了。

(5)vi /usr/libexec/urlgrabber-ext-down

把第一行的usr/bin/python改成/usr/bin/python2.7

Esc->:wq保存,就可以了。

7、安装Django

(1)、python3.4以上版本会自动安装pip,不过在使用命令:

pip install Django==2.0.3

会报错,因为默认的pip还是指向2.7的,如下图所示:

由于Python3会安装pip3这个包,因此我们可以用pip3来安装,命令如下,并查看pip3的版本以及位置:

pip3 install Django==2.0.3

(2)、查看django是否安装成功,并是否为所安装的版本:

8、在服务器底下新建一个目录,用来存放django项目,并部署上来:

(1)、首先,使用命令df -h查看相关目录的磁盘空间,接着选择一个可利用的磁盘空间比较大的,也就是Avail,不是放系统文件的目录即可:

(2)、我这里有个project,专门存放项目的目录,命令如下:

cd /project/

mkdir project_django

(3)、进入此目录:

cd project_django/

(4)、新建一个 django project,项目名称为user_manage

django-admin.py startproject user_manage

(5)、接着查看新建项目后的内容,跟在windows开发的项目对比一下看看,基本没有什么太大区别,会生成一个manage.py,还有一个user_manage目录,再进去user_manage目录会有四个文件:

(6)、接着可以把windows相关的目录,复制到linux底下,尝试一下部署一下看看,之后在存有manage.py的目录底下,执行命令:

python manage.py runserver 0.0.0.0:8000

(7)、其中看报错信息,进行处理,比如缺少什么模块,什么库之类的,安装即可,数据库连接信息等等:

pip3 install PyMySQL==0.8.0

pip3 install Pillow==5.2.0

把数据库本地连接的数据库信息修改为测试环境的数据库信息,修改settings.py里对应的即可。

(8)、接着貌似成功了,其实不然,还有问题:

(9)、有可能你这个端口被占用了,如果被占用了,就要取另外一个端口,查看端口占用方法:

netstat -pan | grep 8000

还有一种可能,这个端口没开放,因为服务器的端口需要开放的,所以你要去开放这个端口,或者使用已经开放过的端口即可。

(10)、其中还需要改一个settings.py文件,不然会报Invalid HTTP_HOST header:错误,把ALLOWED_HOSTS改为下面,就允许所有主机方式连接:

ALLOWED_HOSTS = ['*']

(11)、这里还需注意的是,Linux上的文件路径跟windows上不太一样,所以windows上的 \\ 在Linux上会找不到,需要用 / 的方式,遇到这个问题可以使用print打印输出看看文件路径是否正确。

9、这样就运行成功了,便可以访问这个项目了,如果有域名可以直接用域名加端口访问,没有可以直接用服务器IP加端口访问,以上内容仅供大家学习参考,谢谢!

猜你喜欢

转载自blog.csdn.net/u012561176/article/details/85229407
今日推荐