0

Django でアプリケーションを開発しており、デプロイ サーバーに移動する準備ができています。apache で新しい django プロジェクトを実行できます (ウェルカム ページが表示されます)。ただし、元のプロジェクトのファイルを apache プロジェクト ディレクトリにコピーすると、エラーが発生し始めます。apache/error.log のサンプルを次に示します。

[Wed Jan 26 19:22:08 2011] [error] [client 127.0.0.1] TemplateSyntaxError: Caught     ImportError while rendering: No module named charts
[Wed Jan 26 19:22:36 2011] [error] [client 127.0.0.1] mod_wsgi (pid=4670): Exception   occurred processing WSGI script '/srv/www/enpass/apache/django.wsgi'.
[Wed Jan 26 19:22:36 2011] [error] [client 127.0.0.1] Traceback (most recent call last):
[Wed Jan 26 19:22:36 2011] [error] [client 127.0.0.1]   File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/wsgi.py", line 241, in __call__
[Wed Jan 26 19:22:36 2011] [error] [client 127.0.0.1]     response = self.get_response(request)
[Wed Jan 26 19:22:36 2011] [error] [client 127.0.0.1]   File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py", line 141, in get_response

私の django.wsgi ファイルは次のようになります

import os
import sys

path = '/srv/www'
if path not in sys.path:
    sys.path.insert(0, '/srv/www')

os.environ['DJANGO_SETTINGS_MODULE'] = 'enpass.settings'

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

新しいディレクトリ構造に合わせてファイル内のすべてのパスを変更したので、それは問題ではないと確信しています。FIY、私はこのチュートリアルhttp://blog.stannard.net.au/2010/12/11/installing-django-with-apache-and-mod_wsgi-on-ubuntu-10-04/に記載されている手順に従いました

4

2 に答える 2

2

私は自分でそれを理解しました。プロジェクト ディレクトリ パスを sys.path に追加する必要があります。次のコードは、django.wsgi の問題を解決しました。

path = '/srv/www/enpass'
if path not in sys.path:
    sys.path.append(path)
于 2011-01-26T14:49:58.973 に答える
0

チャートモジュールがないようです..

ピップをインストールする

sudo easy_install pip

パッケージを一覧表示する

pip freeze

開発マシンで同じことを行い、チャートモジュールを探してから、本番サーバーにインストールします

sudo pip install <packagename>
于 2011-01-26T14:22:35.737 に答える