其他分享
首页 > 其他分享> > 部署新的Django项目———〇一 .前期准备

部署新的Django项目———〇一 .前期准备

作者:互联网

在前面我们已经了解了如何利用Django框架做一个小项目,但是一直是通过命令行来实现项目的运行的,显然这样不符合生产环境使用要求。那么下面这一阶段我们就来简单的了解一下如何部署Django项目

整体思路

 网上的方法用的最多的就是用uwsgi和nginx来实现项目的部署,这里也用这个方式实现。

环境准备

 为了模拟真实的使用环境,我打算把项目部署在腾讯的云服务器上。

系统和python的版本

 python为3.6.8,是现装的,由于这个版本的Python用的比较多,就直接指定用这个版本的安装了

[root@VM-0-13-centos myfiles]# yum install python36

系统发行版为centos7.5

安装django

django和前面使用的版本一样,在安装完python3以后可以直接通过pip3安装

[root@VM-0-13-centos myfiles]# pip3 install django==2.0.13

创建新的项目

安装好django以后可以创建一个新的项目来备后面测试使用,注意项目的路径,我是在家目录下建立了一个code的文件夹,用来放代码

 直接在目录下创建一个新的项目

[root@VM-0-13-centos code]# django-admin startproject blog

 要通过ip访问这个项目,要先对配置文件settings.py文件进行修改,先用*来允许所有的IP地址访问(修改ALLOW_HOSTS列表)

ALLOWED_HOSTS = ['*']

然后运行程序,指定端口8000

[root@VM-0-13-centos blog]# python3 manage.py runserver 0.0.0.0:8000

这里要注意,运行前应该检查看看8000端口是否已经开启,如果没问题的话,在本机可以访问一下ip+端口号

 

 红色字表示我们还未对数据库进行迁移,但并不影响程序的运行,

 

 这样就准备好了Django的项目

uwsgi的准备

 uwsgi的用途我们后面再说,这里先把他准备好

安装

uwsgi可以通过pip直接安装

[root@VM-0-13-centos blog]# pip3 install uwsgi

但是很多时候下载完成后在安装时会报错

 

 

 提示信息是没有<Python.h>文件,这是因为我们我们没有安装python开发包,通过yum安装一下

[root@VM-0-13-centos blog]# yum install python36-devel

这里一定要注意,开发包的版本要和python的版本一致

重新安装uwsgi就好了

uwsgi的测试

下面新建一个Python文件来测试uwsgi

##file name:uwsgi_test.py
def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello World"]

就是一个简单的函数,用来发送一个字符串给前端页面

然后运行下面的代码

[root@VM-0-13-centos code]# uwsgi --http :9090 --wsgi-file uwsgi_test.py

同样在运行前应该检查端口的开启状态,这里我们指定的是9090端口,然后在本地访问这个地址

 

 前端显示了我们通过函数发送到字符串Hello World,说明uwsgi的状态也是OK的。

nginx的准备

 nginx的准备稍微麻烦一些,我一步步来

安装nginx

nginx的安装有直接通过yum安装,也可以下载源代码直接自己安装,我在Ubuntu上也按装过,觉得方法都差不多,yum安装时会解决所有的依赖问题,但是装的路径比较分散,这里建议使用源文件安装

下载文件,这里直接下载1.16.1版本并解压

[root@VM-0-13-centos myfiles]# wget http://nginx.org/download/nginx-1.16.1.tar.gz
[root@VM-0-13-centos myfiles]# tar -xzvf nginx-1.16.1.tar.gz 

我们把nginx安装在/opt/nginx路径下,安装的时候指定了两个附加的功能,后期再说

[root@VM-0-13-centos nginx-1.16.1]# ./configure --prefix=/opt/nginx --with-http_ssl_module --with-http_stub_status_module

 安装过程中首先报错,提示需要PCRE libiary

 

 yum安装,注意安装的还是开发包

[root@VM-0-13-centos nginx-1.16.1]# yum install pcre-devel

继续执行配置文件,又出现错误

 

 没有OpenSSL,继续yum安装

[root@VM-0-13-centos nginx-1.16.1]# yum install openssl-devel

配置完成以后,可以通过makefile进行安装

[root@VM-0-13-centos nginx-1.16.1]# make && make install

跳转到我们指定的安装路径下,运行nginx,也可以用绝对路径运行

[root@VM-0-13-centos /]# /opt/nginx/sbin/nginx 

可以看一下nginx默认的配置文件,监听的端口是80,用浏览器访问一下,就能打开nginx的默认引导页面

 

 说明nginx也已经正常安装。

标签:13,centos,部署,root,VM,Django,nginx,前期,安装
来源: https://www.cnblogs.com/yinsedeyinse/p/14107976.html