环境:
阿里云云服务器linux版本:CentOS Linux release 7.9.2009 (Core)
python版本:3.9.10
django版本:3.2.10
sqlite3是自带的版本
使用python3 manage.py runserver 0.0.0.0:9000运行项目时报错sqlite3版本低,因此只能选择升级SQLite或者给django降级,我选择了升级。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnL1EjN2IWNjRTY2MjN0EzYiRjZjRDNmFGMzcDNyQDNxgzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
升级SQLite
1,创建安装目录并进入目录
mkdir -p /opt/sqlite && cd /opt/sqlite
2.下载
wget https://www.sqlite.org/2022/sqlite-autoconf-3390300.tar.gz
SQLite Home Page[这是官网可以自己找适合自己的版本,我是直接下载安装最新的版本]
3.解压
tar -zxvf sqlite-autoconf-3390300.tar.gz
4.编译安装
cd sqlite-autoconf-3390300 # 解压后进入目录
# 编译安装,依次执行下面两行代码
./configure --prefix=/opt/sqlite
make && make install
6.配置环境变量并生效
vim /etc/profile # 记事本打开配置文件
export LD_LIBRARY_PATH=/opt/sqlite/lib # 添加这行配置信息后保存退出
source /etc/profile #再执行这条命令手动读取/etc/profile,加载文件中的所有变量
7.检查版本
sqlite3 --version
运行Django项目注意事项:
1,数据库迁移
到这里再去执行django项目就会发现新的报错,说是有多少条数据没有同步之类的,这时只要执行下面这条命令就能解决了
python3 manage.py migrate
2,手机或其他设备连接云服务器上的django项目
问题:
上面都搞定以后,再执行
python3 manage.py runserver 0.0.0.0:8000
发现项目可以正常运行了,但是浏览器无法连接到项目打开网页。
解决办法:
1,修改django的settings.py ,检查app是否已经自动注册,如果没有需要手动添加 。
2,修改允许访问的主机列表
默认只允许 本地 127.0.0.1访问,启动在了linux的机器上 ,如果不修改windows无法访问,写一个 * 表示允许所有的主机访问,如果怕不安全也可以只设置自己要测试的机器ip
ALLOWED_HOSTS = ["*"]
3,查看云服务器的对应端口是否开放,比如django项目使用8000端口,就需要开放云服务器的8000端口,具体办法可以查看阿里云云服务器安装mysql数据库注意事项_宇木灵的博客-CSDN博客我之前写的这篇文章的第六个步骤。
此时再在浏览器输入云服务器地址加端口就能连接访问这个项目了!