0

しばらく mod_python で django を実行していましたが、今日は次のエラーが発生します

MOD_PYTHON ERROR

ProcessId:      4551
Interpreter:    'thatch'

ServerName:     'thatch'
DocumentRoot:   '/var/www/thatch'

URI:            '/'
Location:       '/'
Directory:      None
Filename:       '/var/www/thatch/'
PathInfo:       ''

Phase:          'PythonHandler'
Handler:        'django.core.handlers.modpython'

Traceback (most recent call last):

  File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1537, in HandlerDispatch
    default=default_handler, arg=req, silent=hlist.silent)

  File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1202, in _process_target
    module = import_module(module_name, path=path)

  File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 304, in import_module
    return __import__(module_name, {}, {}, ['*'])

ImportError: No module named django.core.handlers.modpython

これは私の仮想ホスト構成です

<VirtualHost *:80>
  ServerName  thatch

  DocumentRoot /var/www/thatch

  <Location "/">
    SetHandler python-program
    PythonPath "['/var/www/thatch'] + sys.path"
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE thatch.settings
    PythonOption django.root /var/www/thatch
    PythonDebug On
  </Location>

  <Location "/media">
    SetHandler None
  </Location>

  <LocationMatch "\.(jpg|gif|png|css|js)$">
    SetHandler None
  </LocationMatch>

</VirtualHost>

なぜこれが起こっているのですか?

4

2 に答える 2

1

私はあなたの問題が何であるかを推測することしかできませんが、ここに2つの標準的なチェックがあります:

  1. いくつかの異なる作業ディレクトリから modpython をシェルにインポートします
  2. ユーザーを変更し (ルート設定以外にユーザーがいる場合)、手順 1 を繰り返します。

#2が価値があるよりも問題が多いように見える場合は、 modpythonへのパスに沿った各フォルダーのアクセス許可を非常に注意深く調べて、途中のすべての段階で「その他」に読み取りアクセス権があることを確認してください. django をホーム ディレクトリに移動した場合 (以前のように...理由はわかりませんが、同じエラーが発生しました)、それが問題になります。Apacheが読み取れるディレクトリに戻すか、他の読み取り権限を追加する必要があります。

于 2009-03-13T15:16:59.557 に答える
0

私の場合、pytonpath とアクセス権は問題ありませんでした。このエラーは、python の再コンパイル後に消えました。

構成:
Gentoo
Django 1.1
Apache:
www-servers/apache-2.2.15 USE="doc ssl suexec threads -debug -ldap (-selinux) -static" APACHE2_MODULES="alias auth_basic authn_alias authn_anon authn_default authn_file authz_default authz_host authz_owner autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache フィルター ヘッダーには info log_config logio mem_cache mime mime_magic ネゴシエーション rewrite setenvif speling status unique_id userdir usertrack vhost_alias -actions -asis -auth_digest -authn_dbd -authn_dbm -authz_dbm -authz_groupfile -authz_user -cern_meta -charset_lite -dbd -dumpio -ident -imagemap -log_forensic - が含まれますproxy -proxy_ajp -proxy_balancer -proxy_connect -proxy_ftp -proxy_http -substitute -version" APACHE2_MPMS="worker -event -itk -peruser -prefork"
Python 2.6.4

于 2010-05-29T23:07:39.337 に答える