将django项目部署到centos的踩坑实战
作者:十一的杂文录 发布时间:2021-05-14 06:00:22
前言
本文介绍的是将django项目部署到centos的遇到的一些问题,关于将Django项目部署到CentOs服务器中的步骤可以参考这篇文章:https://www.jb51.net/article/149135.htm
FAQ1:在使用pip3安装库的时候,提示需要升级pip
pip3 install --upgrade pip
FAQ2:在创建软链接时,提示:ln: failed to create symbolic link ‘/usr/bin/python3': File exists
我们可以在参数中加个 f,做强制创建
ln -sf /huyang/python395/bin/python3.9 /usr/bin/python3
FAQ3:在运行 django3 项目时,运行不起来,总是提示:DJANGO.CORE.EXCEPTIONS.IMPROPERLYCONFIGURED: SQLITE 3.9.0 OR LATER IS REQUIRED (FOUND 3.7.17).
centos默认安装的 SQLite 是 2.x 版本的,但是django要求是大于 3.9.0 版本的,所以会跑不起来。
这个是个比较头疼的问题,但是有两种解决方法:
方法一:升级centos的sqlite版本,目前这个方法,我还没彻底解决,ps:升级centos的sqlite后,从Python3导入的还是 2.x 版本。这个问题留待以后研究。
这个方法虽然还没有解决,但是可以先记录下安装centos的sqlite
1.创建文件夹,并进入文件夹
mkdir -p /usr/local/sqlite && cd /usr/local/sqlite
2.下载sqlite
wget wget https://www.sqlite.org/2021/sqlite-autoconf-3350500.tar.gz
3.解压,并进入解压后的文件夹
tar -zxvf sqlite-autoconf-3350500.tar.gz && cd sqlite-autoconf-3350500
4.设置配置文件,安装位置
./configure --prefix=/usr/local/sqlite
5.编译+安装
make && make install
6.将之前的sqlite链接做个备份,然后创建软链接
mv /usr/bin/sqlite3 /usr/bin/sqlite3.bak
ln -sf /usr/local/sqlite/bin/sqlite3 /usr/bin/sqlite3
7.配置环境变量,并生效
export LD_LIBRARY_PATH = "/usr/local/lib"
source ~/.bashrc
8.检查sqlite版本
sqlite3 --version
方法二:使用pysqlite替换sqlite,这个方法就比较简单了,下面就讲一下这个方法
这个方法是不依赖系统的 sqlite ,而是使用 pysqlite3 和 pysqlite3-binary 来操作
1.先安装这两个库
pip3 install pysqlite3
pip3 install pysqlite3-binary
2.修改 base.py 文件
vi /huyang/python395/lib/python3.9.5/site-packages/django/db/backends/sqlite3/base.py
# from sqlite3 import dbapi2 as Database (注释掉这段)
from pysqlite3 import dbapi2 as Database # 启用pysqlite3
然后按 ESC ,输入 :wq!,保存退出文件
然后在运行项目,就可以正常运行了。
FAQ4:在安装Python库的时候,提示:ModuleNotFoundError: No module named '_ctypes'
需要安装 libffi-devel ,然后重新编译安装Python
yum install libffi-devel -y
cd Python-3.9.5
make install
来源:https://www.cnblogs.com/shiyixirui/p/14998782.html


猜你喜欢
- 本文实例为大家分享了python opencv摄像头应用的具体代码,供大家参考,具体内容如下1、安装下载安装包pip install ope
- 如何取得刚添加的记录自动增加的ID字段的号码?我们用下面这个程序就行:rs(1)=oldrname &nb
- 以下以 IE 代替 Internet Explorer,以 MF 代替 Mozzila FF1. document.form.item 问题
- 一、准备工作开始之前,先参考上一篇: struts2.3.24 + spring4.1.6 + hibernate4.3.11 +
- 本博文源于《python数据可视化》(黑马程序员编著)。先讲解bar参数如何使用,然后分别演示堆积柱形图和带误差柱形图画法。bar参数bar
- 众所周知当前(甚至接下来的几年)最酷的东西是iPhone。不仅仅是因为iPhone看起来不错,它们在网站方面也很不错。而且,更重要的是,很多
- Instr函数与InstrRev函数大家都应该很熟悉,但是如果你看过《ASP * 站开发实践教程》,你应该注意一下。该书中介绍它们时是很有迷
- Go 中时间格式化的模板const ( ANSIC = "Mon Jan _2 15:04:
- 如图所示,我们要计算任意两个向量之间的夹角。(图中的坐标数字是估计值,随手给定)python代码如下import math AB = [1,
- 这篇论坛文章详细的讲解了使用SQL Server 2008管理非结构化数据的具体方法,更多内容请参考下文:microsoft SQL Ser
- 1、数据库架构1.1、MySQL 的基础架构图给面试官讲一下 MySQL 的逻辑架构,有白板可以把下面的图画一下,图片来源于网络。Mysql
- 概述 一、 初识setup函数 组件中所用到的:数据、方法等等均要配置在setup中,这也就意味着在Vue2中写的dat
- 用Python实现常规的静态网页抓取时,往往是用urllib2来获取整个HTML页面,然后从HTML文件中逐字查找对应的关键字。如下所示:i
- 前段时间喜欢用python去抓一些页面玩,但都基本上都是用get请求一些页面,再通过正则去过滤。今天试了一下,模拟登陆个人网站。发现也比较简
- 阅读上一篇:FrontPage XP设计教程4——Css样式表的应用表单在网站的制作过程中是比较常见的,举个简单的例子,我们在申请免费电子信
- 目录1、功能介绍2、关键代码2.1 主页功能2.2 添加商品信息2.3 数据库设计商品表前言:  
- 一、引言网络上充满了窃听,我们的信息很容易被不怀好意的人获得,给我们造成不好的影响。如果你需要在网络上传输机密或者敏感的隐私信息,为了防备别
- 要想从命令行启动mysqld服务器,你应当启动控制台窗口(或“DOS window”)并输入命令:C
- 首先,来说一下对话框: 对话框在Windows应用程序中使用非常普遍,许多应用程序的设定,与用户交互需要通过对话框来进行,因此对话框是Win
- 前言Qt 自带的工具提示样式不太好看,就算加了样式表也时不时会失效,同时工具提示没有阴影,看起来就更难受了。所以本篇博客将会介绍自定义工具提