使用宝塔面板部署Django应用(不成功Kill Me!)

news2024/11/24 3:11:32

使用宝塔面板部署Django应用

文章目录

    • 使用宝塔面板部署Django应用
  • 本地操作
  • 宝塔面板部署
  • 可能部署失败的情况

本地操作

  1. 备份数据库
# 备份数据库
mysqldump -u root -p blog > blog.sql
  1. 创建requirements
# 创建requirements.txt
pip freeze > requirements.txt
  1. 将本项目打包成zip文件上传到服务器

宝塔面板部署

  1. 进入宝塔面板 在软件商店安装Myql5.7 python项目管理器2.4 Nginx1.24

在这里插入图片描述

  1. 在网站栏点击添加站点 输入域名 其他都不创建

在这里插入图片描述

  1. 然后点击数据库栏点击添加数据库,一般数据库名就用django应用的数据库名

在这里插入图片描述

然后导入刚才备份的数据库sql文件

  1. 然后将刚才上传的zip文件解压到www/wwwroot目录下,然后修改配置文件

修改settins.py文件,注意这里的密码就是刚才创建数据库时生成的密码

# 修改数据库配置
DATABASES = {
    "default": {
        "ENGINE": "django.db.backends.mysql",
        'USER': 'blog_project',
        'PASSWORD': 'xxxxx',
        'HOST': 'localhost',
        'PORT': '3306',
        'NAME': 'blog_project',
    }
}

在根目录下创建uwsgi.ini文件,复制内容

[uwsgi]
master = true
processes = 1
threads = 2
master = true
chdir = /www/wwwroot/blog_project
wsgi-file= /www/wwwroot/blog_project/blog_project/wsgi.py
http = 0.0.0.0:8000
logto = /www/wwwroot/blog_project/logs/error.log
chmod-socket = 660
vacuum = true
uid=root
gid=root
max-requests = 1000
  1. 点击软件商店,点击python项目管理器的设置,点击添加项目

注意这里项目路径要填到manage.py文件的上一级目录,也就是项目的根目录,确保这里面有requirements.txt文件和manage.py文件。

启动文件要选择wsgi.py文件

在这里插入图片描述

  1. 映射到域名,输入刚才设置的域名即可

在这里插入图片描述

  1. 修改一下nginx的配置文件,将域名指向到django的端口

在这里插入图片描述

  1. 重启nginx和python项目管理器,然后访问域名,如果出现主页,说明部署成功

在这里插入图片描述

可能部署失败的情况

如果出现诸如502 或者 Internal Server Error等错误,大概率是setting.py文件中的数据库配置有问题.(如果你照着我的步骤操作的话)

如果出现页面加载成功,但是样式、图片等资源加载不出来,可能是静态资源没有配置好,具体来说就是在nginx的配置文件中加入

location /static/ {
    alias /www/wwwroot/blog_project/static/;
}

如果出现404错误,可能是python项目忘记启动,重启一下即可。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1831972.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

揭示SOCKS5代理服务器列表的重要性

在复杂的网络安全领域中,SOCKS5代理在保护在线活动方面发挥着关键作用。本文深入探讨了SOCKS5代理服务器列表的细节,探讨了它们的应用、优势以及在增强在线安全和隐私方面不可或缺的功能。 一、理解SOCKS5代理服务器列表 作为在客户端和服务器之间进行通…

522. 最长特殊序列 II

题目 给定字符串列表 strs ,返回其中最长的特殊序列的长度。如果最长特殊序列不存在,返回 -1。 特殊序列定义如下:该序列为某字符串独有的子序列(即不能是其他字符串的子序列)。 字符串 s 的子序列可以通过删去字符…

Plonky3和Binius中的Brakedown多项式承诺协议解析及优化(3)

3.2 Expander Graph and Linear-Time Encodable Linear Code 线性时间编码是线性纠错码的一种,核心是扩展图(Expander Graph),如下图所示: Figure 3 Expander Graph Expander Graph是一种具有强连通性的稀疏图&#…

ensp防火墙web密码重置(前提通过console可以登录)

客户电脑是命令行没有用户名直接输入密码就可以登录了,但是web端不知道admin的密码 前两天遇到运维单位的一台防火墙web网页不知道用户名密码,默认的登录不了,但是通过console可以登录命令行,今天就记录下如何通过命令行修改web页…

iOS 18 照片应用程序增加了新分类用于查找二维码、收据、插图等

苹果照片应用 苹果在iOS 18的照片应用中引入了全新的设计,将图库和推荐部分合并为一个更集成的多合一视图。重新设计的实用工具部分经过全面改造,使得查找不同类型的图片更加容易。 实用工具 在iOS 17中,照片应用的实用工具部分只包括导入…

单调队列总结

单调队列的介绍 由于现在我也没接触过正经的单调队列的定义,因而引申为介绍, 单调队列,类似与单调栈,存储在单调队列里面的元素理应都是单调的,单调队列的基础使用deque(双端队列)去实现的&am…

DY-34/60C电压继电器 带板前底座 约瑟JOSEF

系列型号: DY-32电压继电器;DY-36电压继电器; DY-33电压继电器;DY-37电压继电器; DY-34电压继电器;DY-38电压继电器; DY-31电压继电器;DY-35电压继电器; DY-32/60C电…

6.17作业

//主函数 #include "widget.h" #include "from.h" #include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();From f;QObject::connect(&w,&Widget::my_jump,&f,&From::jump_slot);…

如何下载mmwave_automotive_toolbox?

摘要&#xff1a;mmwave_automotive_toolbox已经没有下载连接了&#xff0c;因为它已经和radar_toolbox集成到一起了&#xff0c;本文介绍下载方法。 链接如下 Corner Radar Overview (ti.com) 本文发布的时间时2024年6月17日&#xff0c;如果上面这个链接已经无法访问&#…

如何监控员工浏览网址(有效方法分享)

在数字化办公日益普及的今天&#xff0c;合理监控员工浏览网址成为了企业管理中的一个重要议题。 这不仅关乎工作效率的提升&#xff0c;更涉及到企业信息安全与合规管理。 以下是一些有效监控员工浏览网址的方法分享&#xff0c;旨在帮助企业管理者在保障隐私的前提下&#x…

探索AI绘画工具的前沿:创新科技与艺术的无缝融合

在科技和艺术交织的时代&#xff0c;AI绘画工具以其独特的魅力引领着创作的新潮流。本文将带您深入了解AI绘画工具的前沿技术&#xff0c;并通过最新例子展示其实际应用和潜力。 AI绘画工具概述 AI绘画工具通过集成深度学习、自然语言处理等技术&#xff0c;实现了从文字描述…

在 Selenium 中更改 User-Agent | 步骤与最佳实践

在 Selenium 中更改 User Agent 是许多网页抓取任务中的关键步骤。它有助于将自动化脚本伪装成常规浏览器&#xff0c;从而避免被网站检测到。本指南将带您了解如何在 Selenium 中更改 Google Chrome 的 User Agent&#xff0c;并提供最佳实践以确保您的网页抓取任务顺利进行。…

Pikachu靶场--RCE

exec"ping" 输入IP地址查看页面反应 可以在IP地址的后面拼接我们想要执行的命令 127.0.0.1 & ipconfig 127.0.0.1 && type C:\Windows\win.ini 127.0.0.1 | systeminfo 127.0.0.1 && net user 命令连接符 &命令1和命令2正…

Windows环境部署MySQL_8.4.0 LTS的部署安装、验证连接以及卸载全过程实操手册

前言&#xff1a; 什么是 MySQL MySQL 是一个关系型数据库管理系统&#xff0c;由瑞典 MySQL AB 公司开发&#xff0c;目前属于Oracle 公司。MySQL 是一种关系型数据库管理系统&#xff0c;关系型数据库将数据保存在不同的表中&#xff0c;而不是将所有数据放在一个大仓库内&am…

DS1339C串行实时时钟-国产兼容RS4C1339

RS4C1339串行实时时钟是一种低功耗的时钟/日期设备&#xff0c;具有两个可编程的一天时间报警器和一个可编程方波输出。地址和数据通过2线双向总线串行传输。时钟/日期提供秒、分钟、小时、天、日期、月份和年份信息。对于少于31天的月份&#xff0c;月末的日期会自动调整&…

药品光照稳定性试验箱如何进行光强度的校准和验证?

药品光照稳定性试验箱是一种用于模拟不同光照条件下药品贮存和稳定性评价的设备&#xff0c;其精准的光强度控制和稳定性对药物质量的保证至关重要。为了确保光照稳定性试验箱的光强度控制精准可靠&#xff0c;以下将介绍光照稳定性试验箱如何进行光强度的校准和验证。 1、设备…

2024年最佳插电式混合动力电动汽车

对电动汽车充满好奇和环保意识的司机们还没有准备好跨入纯电动汽车&#xff0c;他们可以找到一个折衷方案&#xff0c;即插电式混合动力车。 在过去的16年里&#xff0c;我一直在把握汽车行业的脉搏。试驾数百辆汽车、电动汽车、插电式混合动力车&#xff0c;跟踪汽车行业的新闻…

从11个视角看全球Rust程序员1/4:深度解读JetBrains最新报告

讲动人的故事,写懂人的代码 五个月前,编程界的大佬JetBrains发布了他们的全球开发者年度报告。 小吾从这份报告中找出了下面11个关于全球程序员如何使用Rust的有趣的趋势,让你学习和使用Rust更轻松。 1 这两年有多少程序员在工作中使用了Rust? 2 全球程序员使用Rust有多…

示例:WPF中DataGrid设置多级分组样式

一、目的&#xff1a;应用CollectionViewSource和GroupStyle设置DataGrid多级分组样式 二、实现 一级分组效果如下 二级分组效果如下 三、环境 VS2022 四、示例 具体实现代码如下 <TabItem Header"DataGrid - 多级分组"><TabItem.Resources><Colle…

09-Spark架构

相比MapReduce僵化的Map与Reduce分阶段计算&#xff0c;Spark计算框架更有弹性和灵活性&#xff0c;运行性能更佳。 1 Spark的计算阶段 MapReduce一个应用一次只运行一个map和一个reduceSpark可根据应用复杂度&#xff0c;分割成更多的计算阶段&#xff08;stage&#xff09;…