如何在Linux上部署一个简单的Django项目
参考文章: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加端口访问,以上内容仅供大家学习参考,谢谢!
更多推荐
所有评论(0)