部署现有Django应用程序到生产服务器。这是一个非常老的网站,已经三年没有更新了。
我被雇用来更新它,其中包括将Django版本升级到最新版本。这破坏了网站上许多东西,需要修复。
我进行了测试部署,一切顺利。现在是时候部署到生产环境了,但我遇到了一些问题...
首先,我要做的是记录服务器上当前的Django版本,以防出现任何问题时可以回滚。我尝试在Python命令提示符中登录并导入Django以查找版本号,结果显示未找到Django。
我继续查找,并在pip requirements.txt文件中找到了版本号。
然后我决定更新服务器上的实际Django版本。更新顺利进行。然后我检查了现场,发现一切都没有改变(旧文件仍然存在)。大部分网站应该已经崩溃了。它没有识别Django中的任何更改。
我认为原因可能是上一个承包商使用了virtualenv?这就是为什么它不能识别Django,或者Django更新没有对现场产生任何影响的原因?
这是我能想到的唯一解释,因为既然有pip requirements.txt文件,他很可能使用pip安装了Django,这意味着Python应该识别到Django的路径。
所以我想尝试找到virtualenv的源路径,使用命令“lsvirtualenv”。但是当我这样做时,甚至连这个命令也会给我一个“command not found”的错误。
我的唯一猜测是这是一个较旧版本的virtualenv,没有这个命令?如果不是这种情况,我不知道发生了什么。
你有什么建议吗?我如何使用可以访问的工具找到我需要更新的软件包版本的信息?
bin/activate
文件?就像这样:locate bin/activate
- undefined