测试开发之Django——No5.Django项目的部署(CentOS7+nginx)
配置环境:CentOS7
1.安装python3环境
默认的CentOS7系统中,会安装python2.7的版本,由于Django2.0并不支持python2.7的版本,所以我们需要自己在系统中安装python3的版本。
① 安装wget工具,用于在网上下载文件
这样代表,我的系统中,已经安装了wget,如果没有,会自动下载安装
② 安装gcc编译环境,安装python3 所需要的编译环境
当然,我的系统中也安装了gcc。
如果没有安装,会自动下载安装,之前的命令就是下载并安装的命令
③ 安装python3 使用的依赖组件
执行后,会自动下载安装包/升级包,安装后,会让我们输入y、d或者n,去继续下一步,y就代表yes,代表往下面继续执行。
出现如上图的内容之后,代表我们的依赖项安装/升级成功
这里多给大家带一个linux的知识点。
命令 echo $? 这个命令是什么意思呢?意思就是打印上一个命令执行的结果,结果为0,则代表无异常和错误,如果不为0,则代表执行有异常或者错误存在。需要检查。
④ 下载python
首先,我们需要知道我们安装的python版本。
我们在建立项目,开发调试的时候,选择的python版本就至关重要。
这里的python版本,要与我们开发所用的版本相对应,如果无法对应到版本,那么至少在大版本上也要对应。
例如,我现在的开发调试python版本,用的是3.7.0b4
那么,我的python版本,只能选择python3.7
python版本的ftp下载地址:https://www.python.org/ftp/python/
选择好我们所需要安装的python版本
复制出来,python版本所对应的下载地址为:https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz
在我们的shell中,敲入安装命令如下图。这里要注意,wget后面的下载地址,必须要加引号,否则会出错。
这样,python就已经开始在下载了。
当出现如图提示时,则代表python包下载完毕。
⑤ 安装python
这里需要分几个步骤,首先,我们需要知道我们的文件下载到哪里了。
按照名称查找所在位置。 ./代表了当前文件夹,所以我们再查看一下当前目录的路径,和当前目录下的文件。
移动压缩文件到想要安装的目录 mv 源路径+文件名 目标路径
这样,就移动成功了。
这里为什么要移动呢。因为我们安装最好不要安装到root里,当然你不移动也没有任何问题。
下面,我们就可以解压,然后编译了。
在文件所在目录下,输入解压命令。
查看解压后的路径
这个文件夹是我们需要的开发环境,也包含了所需要的很多组件。
然后我们需要把这个环境编译到CentOS 7 系统中,我们才可以正常使用这个sdk。
进入Python目录,创建安装路径,编译到指定目录,依次执行命令 ./configure make make install
在执行./configure的时候,如果你登陆的用户不是root,还需要加上一个sudo sudo ./configure
这里记得每一次执行命令之后,都要去查看一下上一个命令执行是否有异常或者错误。
果不其然,执行出现了一个错误。
出现错误不要惊慌,这里的错误告诉我找不到这个模型,应该是缺少什么东西。
百度有很多帖子给了我们回答。按照提示操作就可以了。
执行安装缺少的模块。
重新编译
如上图,我们的编译就编译成功了。
现在可以来检测一下sdk是否正常安装成功了。
这里的检测,跟我们在其他系统上安装python是一样的,就是输入系统执行python3,查看结果。
结果
那么,我们就来配一下环境变量。
打开环境变量所在文件
新增内容如下图红圈,编辑后保存环境变量
重新执行刚修改的初始化文件
在重新检查一下,发现我们的python3可以使用了。
到这里位置,就代表了我们的基础环境已经搭建完毕了,剩下的就是来部署我们的django项目所需要的内容。
⑥ 部署uWSGI服务器
uWSGI 是一个web服务器,它实现了WSGI、uWSGI和HTTP等协议。Nginx中HttpUwsgiModule的作用是与uWSGI服务器进行交换。
WSGI是一种web服务器网管接口,它是一个web服务器(如nginx服务器)与web应用(如django框架实现的应用)通信的一种规范。
在部署uWSGI服务器之前,需要在python3中安装相对应的模块。
使用pip安装即可
这里的模块安装,与我们本地搭建环境一致,如果我要使用django项目,那么就需要在pip中安装django。
如果有其他的模块也需要,那么所需要的模块也要安装到pip中,否则我们的项目无法正常运行。
这个时候,我们就可以把我们的整个项目工程文件,添加到服务器指定目录中。
修改项目工程中的setting文件,关闭调试模式,和允许访问地址。
在我们的项目目录下,创建一个ini文件,用来快捷启动uwsgi。
socket 项目读取的地址和端口
chdir 项目目录
module 项目的wsgi 文件
当然还有很多其他的配置,这个可以自行百度了解一下每一个都是代表了什么意思。
⑦ 安装Nginx
关于安装nginx,有很多详细的教程了,就不多赘述。
这里给大家推荐一个链接,大家可以按照链接去查看安装方法
https://www.cnblogs.com/songxingzhu/p/8568432.html
⑧ 添加nginx配置文件
找到nginx.conf所在的文件夹,打开nginx.conf,在后面添加如下内容:
添加后保存文件。
运行命令 nginx -t -c nginx.conf,可以检查配置文件是否正确。
重启nginx
在浏览器中输入我们服务器的地址,和nginx中配置的端口号,就可以直接访问了!