环境准备
系统环境:使用 CentOS-7-x86_64-Minimal 最小化安装;
Python版本:Python-3.7.4
Django安装
采用pip3方式安装Django环境
[root@s11 Python-3.7.4]# pip3 install django
问题处理
1. 尝试启动Django报错SQLite版本低于3.8.3
django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).
- 解决方法:升级SQLite3版本
[root@s11 ~]# sqlite3 --version
3.7.17 2013-05-20 00:56:22 118a3b35693b134d56ebd780123b7fd6f1497668
''' 官网下载最新的源码包 '''
https://www.sqlite.org/download.html
https://www.sqlite.org/2019/sqlite-autoconf-3300100.tar.gz
''' 编译安装 '''
tar -zxvf sqlite-autoconf-3300100.tar.gz
cd sqlite-autoconf-3300100
./configure --prefix=/usr/local
make
make install
''' 查看路径,找到新安装的程序并测试 '''
find /usr/ -name sqlite3
/usr/local/bin/sqlite3 --version
备份原有sqlite版本,并创建一个新版本到原有路径的软链接
mv /usr/bin/sqlite3 /usr/bin/sqlite3_old
ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
- 将路径传递给共享库,解决Python程序中仍然识别到版本3.7.17
编辑 ~/.bashrc 文件,在最后追加内容 export LD_LIBRARY_PATH="/usr/local/lib"
执行 source .bashrc 使修改立即生效
检查Python的SQLite3版本:
2. Django可以正常启动,从外部访问 http://172.16.80.11:8000 打不开网页
## 防火墙放行 8000 端口 ##
[root@s11 ~]# firewall-cmd --zone=public --query-port=8000/tcp
no
[root@s11 ~]# firewall-cmd --zone=public --add-port=8000/tcp --permanent
success
[root@s11 ~]# firewall-cmd --reload
success
[root@s11 ~]# firewall-cmd --zone=public --query-port=8000/tcp
yes
本文由 SHIYL 创作,采用 知识共享署名4.0 国际许可协议进行许可
本站文章除注明转载/出处外,均为本站原创或翻译,转载前请务必署名
最后编辑时间为: Apr 13, 2020 at 04:22 pm