2

運用サーバーで wsgi を動作させることができません。Django 1.4 の実行

これは私の間違いです。

ImportError: 設定 'Hera.settings' をインポートできませんでした (sys.path にありますか?): Hera.settings という名前のモジュールはありません

ファイル プロジェクトは /srv/project/Hara/ にあります。私のファイルシステムの例は以下のとおりです...

    /srv/project/Hara/
      - manage.py

    /srv/project/Hara/Hara
      - settings.py
      - urls.py

    /srv/project/Hara/web
      - models
      - admin.py
      - views.py

/srv/project/Hara/apache
   - django.wsgi

django.wsgi

import os
import sys
sys.path.append('/home/ubuntu/project/Hera')
sys.path.append('/home/ubuntu/project/Hera/Hera')
print >> sys.stderr, sys.path
os.environ['DJANGO_SETTINGS_MODULE'] = 'Hera.settings'

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

1 に答える 1

3

django.wsgi に実際のディレクトリを追加しているとは思わない

sys.path.append('/home/ubuntu/project/Hera')
sys.path.append('/home/ubuntu/project/Hera/Hera')

これらは本番サイトには適用されなくなりました

/srv/project/Heraさらに良いことに、次のようなファイルに関連するパスを取得します。

os.path.join(os.path.abspath(os.path.dirname(__file__)), '..')

このようにして、コードがどこにあるかは問題ではなく、常に取得されます

于 2012-12-12T21:53:37.153 に答える