2017-02-07 6 views
0

私はApache2 Webサーバー上のデプロイメントDjangoアプリケーションにいくつか問題があります。私はとてもエラーがあった:Apache2、Django。インポートエラー

ImportError: No module named 'myproject.settings'

しかし、私はなぜそれを知りませんでした。私たちを手伝ってくれますか?

私のconfigファイル:

<VirtualHost *:80> 
    Alias /static /var/www/myproject/myproject/static 
    <Directory /var/www/myproject/myproject/static> 
     Require all granted 
    </Directory> 

    <Directory /var/www/myproject/myproject/myproject> 
     <Files wsgi.py> 
      Require all granted 
     </Files> 
    </Directory> 

    WSGIDaemonProcess myproject python-path=/var/www/myproject python-home=/var/www/agora/ENV 
    WSGIProcessGroup myproject 
    WSGIScriptAlias//var/www/myproject/myproject/myproject/wsgi.py 

</VirtualHost> 

そしてwsgi.py:

import os 
import sys 

path = '/var/www/myproject' 
if path not in sys.path: 
    sys.path.append(path) 

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

from django.core.wsgi import get_wsgi_application 
application = get_wsgi_application() 

プロジェクトの構造:

project 
|--ENV 
|--project 
|----project 
|------wsgi.py 
|------settings.py 
+0

'settings.py'はどこですか?あなたは本当に 'WSGIScriptAlias// var/www/myproject/myproject/myproject/wsgi.py'を持っていますか?偽の名前を使用すると、このようなデバッグが難しくなります。 – Alasdair

+0

はい、ここに** wsgi.py **と** settings.py ** - **/var/www/agora/agora/agora **のパスを試してください。 – AndMar

答えて

0

設定ファイルは/var/www/agora/agora/agora/settings.pyなので、/var/www/agora/agoraがpythonパス上にある必要があります。

現在のところ、pythonパスにpython-path=/var/www/agoraがあるようです。

Apache設定でpythonパスを正しく設定した場合は、wsgi.pyファイルのsys.pathを変更する必要はありません。

+0

ありがとう、それは私を助けた。 – AndMar

0

あなたはこれを追加する必要があります。

WSGIPythonPath /var/www/myproject/myproject 
+0

お返事ありがとうございます。私はそれを試みたが、これは私を助けなかった – AndMar

関連する問題