1

webfactionサーバーの下に「Hesperides」という名前の私のdjangoプロジェクトを展開しています。Webfaction のデフォルトのプロジェクトのフォルダーは「myproject」なので、次のエラーが発生します。

ImportError: Could not import settings 'myproject.settings' (Is it on sys.path?): No module named myproject.settings

質問は: myproject.settings の代わりに Hesperides.settings から設定をインポートするにはどうすればよいですか? 御時間ありがとうございます。

私のhttpd.conf:

WSGIDaemonProcess jinn processes=2 threads=12 python-path=/home/zeioth/webapps/jinn:/home/zeioth/webapps/jinn/myproject:/home/zeioth/webapps/jinn/lib/python2.7:
WSGIScriptAlias / /home/zeioth/webapps/jinn/myproject/Hesperides/wsgi.py

私の wsgi.py

import os
import sys

from django.core.handlers.wsgi import WSGIHandler
os.environ['DJANGO_SETTINGS_MODULE'] = 'Hesperides.settings'
application = WSGIHandler()

私のフォルダツリー:

jinn
  --apache2
    -bin
    --conf
      -httpd.conf
      -mime.types
    -lib
    -logs
    -modules
  -bin
  -lib
  --myproject
    -manage.py
    --Hesperides
      -wsgi.py
      -urls.py
      -__init__.py
      -settings.py
      -apps
4

2 に答える 2

0

問題が解決しました:これらは、webfaction の下のプロジェクト ディレクトリを変更する手順です。

1-webapps/yourappname/apache2 セットの httpd.conf で:

WSGIScriptAlias / /home/zeioth/webapps/jinn/myproject/yourNewName/wsgi.py

2-アプリの manage.py セット:

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "yourNewName.settings")

3-アプリの wsgi.py セットで:

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

4-アプリの settings.py セットで:

WSGI_APPLICATION ='yourNewName.wsgi.application'

これで、runserver が動作するか、何らかのモジュールをインストールする必要があるかどうかが通知されます。

于 2013-06-19T20:16:34.343 に答える
0

WSGIDaemonProcess を使用する場合は、対応する WSGIProcessGroup ディレクティブが必要であることに注意してください。そうしないと、WSGI アプリケーションはそのデーモン プロセス グループで実行するように委任されません。私が覚えている場合、WebFaction はしばらくの間、壊れた構成ファイルを生成していました。それまたはあなたは、壊れた例があるブログ投稿の1つからこれをコピーしました. 読んだ:

于 2013-06-19T23:18:27.197 に答える