1

Fedora16マシンでローカルにDjangoとApacheを使用してmod_wsgiをセットアップしようとしています。エラーが発生しました:

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

これについては他にもいくつか質問があることに気づきましたが、彼らの解決策ではこのエラーは修正されていません。メッセージに関してあなたが持っているかもしれないどんな助けやアイデアにも感謝します!

-

これが私のセットアップについてのちょっとした洞察です:

  • ローカルホストで500内部サーバーエラーを受信して​​います。
  • 私のディレクトリは/home/name/src/django/animals/catです(catディレクトリには__init__。pyファイルとsettings.pyファイルが含まれています。
  • catディレクトリにcatOneという名前のアプリケーションフォルダが1つあります。これには、__init__。pyファイルも含まれています。
  • 私のwsgiファイルは次のようになります。

import os
import sys

sys.path.append('/home/name/src/django/animals/cat')
sys.path.append('/home/name/src/django/animals')

sys.stderr.write('\n'.join(sys.path))

root = os.path.join(os.path.dirname(__file__), '..')
sys.path.insert(0, root)

packages = os.path.join(root, 'environ/lib/python2.7/site-packages')
sys.path.insert(0, packages)

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

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
  • 設定ファイルと初期化ファイルのアクセス許可は755ですが、777も試しましたが成功しませんでした。

  • 私のsys.pathは次のようになります:


/var/www
/usr/lib/python27.zip
/usr/lib/python2.7
/usr/lib/python2.7/plat-linux2
/usr/lib/python2.7/lib-tk
/usr/lib/python2.7/lib-old
/usr/lib/python2.7/lib-dynload
/usr/lib/python2.7/site-packages
/usr/lib/python2.7/site-packages/PIL
/usr/lib/python2.7/site-packages/gst-0.10
/usr/lib/python2.7/site-packages/gtk-2.0
/usr/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info
/home/name/src/django/animals/cat
/home/name/src/django/animals

助けてくれてありがとう!

4

1 に答える 1

4

SELinuxがファイルへのアクセスで問題を引き起こしていました。これはおそらく最善の方法ではありませんが、/ etc / selinux/configファイルを編集して完全に無効にしました。SELINUX=enforcingをSELINUX=disabledに変更します。

繰り返しになりますが、SELinuxを変更するためのより細かい制御がおそらくあるので、自分の危険で無効にしてください。

于 2012-07-10T04:01:02.193 に答える