私はApache、Linux、およびPythonの世界で初めてです。WSGI (推奨される方法) を使用して apache に django アプリケーションをデプロイしようとしています。
私のdjangoプロジェクトのディレクトリ構造は次のとおりです...
- /
- /apache/django.wsgi
- /apps/ #すべてのアプリをこのディレクトリに置きます
- /アプリ/プロバイダー/
- /アプリ/ショッピング/
- /アプリ/...
- /ミドルウェア/
- ...
Apacheには次の設定があります....
LoadModule wsgi_module modules/mod_wsgi.so
WSGIScriptAlias / D:/Projects/project-name/apache/django.wsgi
<Directory "D:/Projects/project-name/apache/">
Allow from all
Order deny,allow
</Directory>
django.wsgi ファイルには次のコードがあります...
import os
import sys
import settings
sys.path.append(os.path.dirname(os.path.abspath(__file__)) + '/..')
os.environ['DJANGO_SETTINGS_MODULE'] = 'project_name.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
実行時に、appache の error.log でこのエラーを見つけました...
- この行でエラーが発生しました。from apps.providers.models import Provider
- インポート エラー: providers.models という名前のモジュールがありません
なぜこのエラーが発生するのかわかりません。プロバイダーを apps.providers.models からロードする必要がありますが、providers.model からロードしようとしています。
どんな解決策でも大歓迎です。
ありがとう