0

我正在尝试将我的 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"

您可以在以下链接中看到错误

4

1 回答 1

2

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

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

如果中间件是第三方应用程序的一部分;首先安装该应用程序。通常这是用sudo easy_install package-name. 用于sudo将其安装在全局 pythonsite-packages目录中。

更好的方法是使用虚拟环境

于 2012-09-04T17:58:13.420 回答