Django环境搭建过程记录

Django环境搭建

直接使用pip安装django,安装后要在环境变量中添加python安装位置下的

Python\Python38-32\Scripts
Python\Python38-32\Lib\site-packages\django

这样后面才能使用django的管理程序django-admin. py/django-admin

其他操作可以参考django

发现django支持热重载,也算是和js差不多了

Django在linux环境下启动遇到的问题

在windows中修改好环境变量即可使用Django,但在centos启动时遇到sqlite版本不匹配的问题,使用更新sqlite的方式进行修复。

centos中默认自带的sqlite版本为3.7.17,在使用最新版本django3.1.2时,由于需要的sqlite版本过低会导致.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17).的问题,在设置中需要更新本地版本的sqlite,可以在sqlite官网下载响应的文件到linux服务器,安装更新即可
该安装包可以在官网找到SQLite,找到最新版本的gz文件并获取下载链接,在linux中执行以下命令

wget https://www.sqlite.org/2020/sqlite-autoconf-3330000.tar.gz         //下载的为当前最新的版本,不必按照这个也行
tar -zxvf sqlite-autoconf-3330000.tar.gz                        //解压下载的问题
cd sqlite-autoconf-3330000                                      //跳转到解压的目录

./configure                                                     //执行配置软件
make                                    
make install                                                    //安装

cp sqlite3 /usr/bin/sqlite3                                     //将sqlite-autoconf-3330000 文件夹下则sqlite3覆盖到系统的sqlite位置
sqlite3 -version                                                //查看当前的sqlite版本

参考CentOS 升级sqlite3
一般到这里就结束了,但是在启动django时依旧报那个错误,多次查看系统版本,发现的确是更新了,在网上有人指出是不是python3中的sqlite版本没有更新,通过以下指令

>>> import sqlite3
>>> sqlite3.sqlite_version
'3.1.0'

发现还是旧版本,之后发现其他人在安装好系统sqlite后还配置了自动脚本,他们在linux系统的~/.bashrc中进行了修改,最后如下

# .bashrc

# User specific aliases and functions

alias rm='rm -i'
alias cp='cp -i'
alias mv='mv -i'

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi
export LD_LIBRARY_PATH="/usr/local/lib"

其实就是增加了export LD_LIBRARY_PATH="/usr/local/lib这一行,在查找资料后,发现是把/usr/local/lib作为库包文件的查询备用路径,网络上的解释是

当执行函数动态链接.so时,如果此文件不在缺省目录下'/lib' and '/usr/lib'.

那么就需要指定环境变量LD_LIBRARY_PATH

也就是手动添加了一个环境变量,和win类似,缺省了就到该路径下查找,实际上export指令可以直接在命令行上运行一次,也有一样的效果,但export只在当前的登录有效,也就是切换用户或者重启的时候就又要再来一次,所以将该指令卸载~/.bashrc里面,该文件的为初始化文件,每次登录都将运行,所以就避免了手动输入的问题,此时在python中测试sqlite版本就没问题了,再次回到django-project/HelloWorld位置,执行python3 manage.py runserver 0.0.0.0:8000,页面将正常显示,如果出现

运行django项目出现Invalid HTTP_HOST header: '192.168.1.111:8000'. You may need to add '192.168.1.111' to ALLOWED_HOSTS

则在项目的setting.py文件中,找到ALLOWED_HOSTS = [’*’] #在这里请求的host添加了*

参考

Centos7 虚拟环境安装Django 出现ImproperlyConfigured(‘SQLite 3.8.3 or later is required (found %s).’ %Database.sqlite_version)错误

LD_LIBRARY_PATH

设置 Linux 的 LD_LIBRARY_PATH 变量

猜你喜欢

转载自blog.csdn.net/Thinking_calculus/article/details/113794966