我正在尝试将一个小型 python 瓶应用程序部署到 REdHat openshift 平台,但我不断收到 500 服务器错误。当我 ssh 进入应用程序并运行 python 时,我发现导入瓶(或我使用的所有其他库)因 importError 而失败。
我以两种方式安装了所需的模块(遵循几个教程):
两者都在 setup.py :
install_requires=['sqlalchemy','bottle','requests']
并通过在数据文件夹中安装 virtenv,使用以下命令激活它:
source virtenv/bin/activate
和 pip install bottle sqlalchemy 请求
然后将 wsgi 处理程序入口点:'application' 编辑为:
import os
here = os.path.dirname(os.path.abspath(__file__))
os.environ['PYTHON_EGG_CACHE'] = os.path.join(here, '..', 'data', 'virtenv/lib/python2.7/site-packages')
virtualenv = os.path.join(here, '..', 'data/virtenv/bin/activate_this.py')
execfile(virtualenv, dict(__file__=virtualenv))
from myappname import application
(其中 myappname 包含实际的瓶应用程序逻辑)在每次更改后将所有内容推送到 git push 到 openshift,然后是相同的 500 服务器错误。当 ssh 到应用程序并运行时
python application
我收到导入错误似乎没有任何工作,我很乐意在这里提供任何帮助
编辑: 当 ssh 进入应用程序并手动执行
source virtenv/bin/activate
并尝试运行 python 一切都按预期工作(至少大部分工作)。所以出于某种原因,activate_this.py 的行为似乎没有任何线索?