Django简介安装与宝塔面板部署

10 篇文章 0 订阅

Django简介安装与宝塔面板部署

1.简介

Django 是一个开放源代码的 Web 应用框架,由 Python 写成。

Django 遵守 BSD 版权,初次发布于 2005 年 7 月, 并于 2008 年 9 月发布了第一个正式版本 1.0 。

Django 采用了 MVT 的软件设计模式,即模型(Model),视图(View)和模板(Template)

特点

  • 强大的数据库功能
  • 自带强大的后台功能
  • 优雅的网址

MVT模型的介绍

Django 的 MTV 模式本质上和 MVC 是一样的,也是为了各组件间保持松耦合关系,只是定义上有些许不同,Django 的 MTV 分别是指:

  • M 表示模型(Model):编写程序应有的功能,负责业务对象与数据库的映射(ORM)。
  • T 表示模板 (Template):负责如何把页面(html)展示给用户。
  • V 表示视图(View):负责业务逻辑,并在适当时候调用 Model和 Template。

除了以上三层之外,还需要一个 URL 分发器,它的作用是将一个个 URL 的页面请求分发给不同的 View 处理,View 再调用相应的 Model 和 Template

用户操作流程:

在这里插入图片描述
解析:

用户通过浏览器向我们的服务器发起一个请求(request),这个请求会去访问视图函数:

  • 如果不涉及到数据调用,那么这个时候视图函数直接返回一个模板也就是一个网页给用户。
  • 如果涉及到数据调用,那么视图函数调用模型,模型去数据库查找数据,然后逐级返回。

2.Django安装

注:在安装 Django 前,系统需要已经安装了Python的开发环境

下载Django包
在cmd里面输入等待安装完成:

pip install Django==3.2.9     #可支持选择版本号,示具体开发情况而定

检查是否安装成功,在python cmd IDE下,输入以下:

>>> import django
>>> django.get_version()

3.创建第一个Django项目

安装 Django 之后,您现在应该已经有了可用的管理工具 django-admin

使用 django-admin 来创建 HelloWorld 项目:(需要在django-admin目录下打开cmd运行)

django-admin startproject HelloWorld

创建完成后我们可以查看下项目的目录结构:

$ cd HelloWorld/
$ tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- asgi.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

目录说明:

  • HelloWorld: 项目的容器。
  • manage.py: 一个实用的命令行工具,可让你以各种方式与该 Django 项目进行交互。
  • HelloWorld/init.py: 一个空文件,告诉 Python 该目录是一个 Python 包。
  • HelloWorld/asgi.py: 一个 ASGI 兼容的 Web 服务器的入口,以便运行你的项目。
  • HelloWorld/settings.py: 该 Django 项目的设置/配置。
  • HelloWorld/urls.py: 该 Django 项目的 URL 声明; 一份由 Django 驱动的网站"目录"。
  • HelloWorld/wsgi.py: 一个 WSGI 兼容的 Web 服务器的入口,以便运行你的项目。

浏览器测试

进入manage.py目录运行cmd

python manage.py runserver      #启动服务器

如果正常启动,输出结果如下:
在这里插入图片描述
创建APP

django-admin.py startapp hello    #创建hello app

4.使用宝塔面板快速部署Django项目

开放宝塔端口

假设我们刚购买了一台新的Linux服务器,已经安装好Centos操作系统

在服务器供应商管理后台安全组里开放必要端口

国内的云服务器是把所有的端口给屏蔽了的,如果想使用的话需要自己在服务器提供商后台里的安全组里开放端口。比较常见的是阿里云、腾讯云、百度云等。大多数的服务器商是不需要做此操作的。需要开通的端口一般为:80、443、21、22、3306、8888,8888端口主要是用于访问宝塔的

安装宝塔面板

远程shell到服务器目录

终端输入命令:

mkdir /www

这个目录主要是用于存放宝塔面板和网站(项目)数据的

安装宝塔面板

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh

安装过程很简单,输入命令等待即可,就不做过多介绍

安装成功之后就看到如下类似的信息

这个是宝塔面板的登录地址、用户名和登录密码,你需要把这个复制保存起来。
在这里插入图片描述

更多关于宝塔的其它操作,可以直接在终端输入:bt,回车然后得到如下的选项:
在这里插入图片描述

浏览器访问Bt-Panel地址,登录宝塔面板后台

在这里插入图片描述

安装常用的WEB服务组件

在这里插入图片描述
这里面只有Nginx是必须要安装的,如果你使用的是Mysql数据库,那么Mysql也勾选上,其它的你可以根据自己的需求来决定是否安装。后面如果想安装其它的,也可以在软件管理里安装。留意:软件名后面的三角符号点击它可以选择软件的版本。新手建议默认即可。选择好之后,点击一键安装

安装python项目管理插件

我们在左边的‘软件商店’里选择‘宝塔插件’,找到‘Python项目管理’这个插件进行安装

在这里插入图片描述
安装项目所需要的Python版本

点击设置
在这里插入图片描述
然后出现如下界面:选择我们项目的python版本
在这里插入图片描述

添加项目站点

在这里插入图片描述
域名处填写自己的域名即可,没有域名填写服务器IP地址

上传项目源码

留意:在打包项目源码之前,先在本地环境使用下面的命令把环境依赖包导出到requirements.txt文件里,并把这个文件存放在项目目录下,这一步奏非常重要,请务必记得操作。

导出命令:

pip freeze > requirements.txt

这一步操作好之后,我们就通过下面的步骤把项目源码上传上到服务器上去

到python项目的根目录下,上传Django项目源码的压缩包文件,解压到文件目录中

添加uwsgi配置文件uwsgi.ini

在这里插入图片描述
新建成功之后输入如下代码(根据自己的项目信息替换填写),然后保存:

#添加配置选择
[uwsgi]
#配置和nginx连接的socket连接
socket=127.0.0.1:8997
#配置项目路径,项目的所在目录
chdir=/www/wwwroot/www.django.cn/
#配置wsgi接口模块文件路径,也就是wsgi.py这个文件所在的目录
wsgi-file=myblog/wsgi.py
#配置启动的进程数
processes=4
#配置每个进程的线程数
threads=2
#配置启动管理主进程
master=True
#配置存放主进程的进程号文件
pidfile=uwsgi.pid
#配置dump日志记录
daemonize=uwsgi.log`
修改网站配置

左侧网站,然后点击网站名,在弹出的窗口里找到’配置文件’,然后配置文件里输入如下代码:

location / {
       include uwsgi_params;
       uwsgi_pass 127.0.0.1:8997;  #端口要和uwsgi里配置的一样
       uwsgi_param UWSGI_SCRIPT myblog.wsgi;  #wsgi.py所在的目录名+.wsgi
       uwsgi_param UWSGI_CHDIR /www/wwwroot/www.django.cn/; #项目路径
    }
      location /static/ {
      alias /www/wwwroot/www.django.cn/static/; #静态资源路径
      }

保存即可

python项目管理里面添加项目

在软件商店里找到Python项目管理插件,然后点击设置,添加项目。里面的各种选项很简单,按实际情况填写就行
在这里插入图片描述
值得说的就是那个端口,端口要和uwsgi.ini里面的那个端口一致。如果有多个项目的话,不同的项目要填写不同的端口。端口随便填写,只要不与其它常用软件端口冲突就好

注:使用Python项目管理插件新建项目成功之后,会自动在项目j源码目录里创建一个虚拟环境,虚拟环境目录一般都是以项目名_venv形式命名的。

进入虚拟环境方法:

在命令行输入 source 项目路径/项目名_venv/bin/activate 如:

source /www/wwwroot/myblog/myblog_venv/bin/activate

大功告成!!!恭喜你!!!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值