【问题标题】:Django Import Error using EC2 and bitnami使用 EC2 和 bitnami 的 Django 导入错误
【发布时间】:2012-09-05 10:32:52
【问题描述】:

我正在尝试将我的 django 应用程序部署到亚马逊的 ec2。我在让我的站点包和中间件在 ec2 服务器上工作时遇到了一些麻烦。我正在为我的 AMI 使用 bitnami djangostack,但我很困惑在服务器上的哪个位置放置我的站点包(如向南注册等)以及在何处放置我的中间件(如分页)。

现在我正在运行服务器并收到以下错误:

Traceback (most recent call last):

  File "/opt/bitnami/apps/django/lib/python2.6/site-packages/django/core/servers/basehttp.py", line 283, in run
    self.result = application(self.environ, self.start_response)

  File "/opt/bitnami/apps/django/lib/python2.6/site-packages/django/contrib/staticfiles/handlers.py", line 68, in __call__
    return self.application(environ, start_response)

  File "/opt/bitnami/apps/django/lib/python2.6/site-packages/django/core/handlers/wsgi.py", line 250, in __call__
    self.load_middleware()

  File "/opt/bitnami/apps/django/lib/python2.6/site-packages/django/core/handlers/base.py", line 47, in load_middleware
    raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))

ImproperlyConfigured: Error importing middleware pagination.middleware: "No module named pagination.middleware"

你可以在下面的link看到错误

【问题讨论】:

    标签: django amazon-ec2 bitnami


    【解决方案1】:

    site-packages 不是您手动添加项目的地方。让 Python 的安装工具 - pipeasy_install 为您完成这项工作。

    至于中间件,它可以放在PYTHONPATH 中的任何位置。放置它的最佳位置是在您的应用程序目录之一中的文件中(您看到models.py 的同一位置);通常这个文件被称为middleware.py

    如果中间件是第三方应用程序的一部分;首先安装该应用程序。通常这是使用sudo easy_install package-name 完成的。使用sudo安装到全局pythonsite-packages目录下。

    更好的方法是使用virtual environment

    【讨论】:

    • 没有办法手动添加项目吗?我在本地计算机上有一个包含所有必需站点包的文件夹,我想我可以将这些添加到我服务器上的文件夹中?这不可能吗?非常感谢布尔汉!
    • 这样做的问题是某些包可能有优化的编译代码,可能无法在您的目标服务器上运行;像数据库驱动程序这样的组件还有其他需要满足的构建要求——它们可以安装但不能工作;这就是不鼓励它的原因。你可以在你的开发机器上执行pip freeze > requirements.txt。这将列出所有的包。然后将requirements.txt 文件复制到您的服务器并运行sudo pip install -r requirements.txt。这将在服务器上正确安装开发机器上的所有内容。
    猜你喜欢
    • 2015-11-07
    • 1970-01-01
    • 1970-01-01
    • 2014-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多