0

スタックレスPythonを使用してApache2mod_python環境をセットアップしましたが、動作しています。そして、Python環境をでテストすると、次sys.versionのように表示されます。

2.5.2 Stackless 3.1b3 060516 (python-2.52:76701, Dec  8 2009, 02:13:34) 
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu4)]

ブラウザで。

しかし、私がimport stacklessそれをするとき、それは示します:

MOD_PYTHON ERROR

ProcessId:      26177
Interpreter:    '127.0.1.1'

ServerName:     '127.0.1.1'
DocumentRoot:   '/var/www/'

URI:            '/test.py'
Location:       None
Directory:      '/var/www/'
Filename:       '/var/www/test.py'
PathInfo:       ''

Phase:          'PythonHandler'
Handler:        'mod_python.publisher'

Traceback (most recent call last):

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

  File "/usr/local/lib/python2.5/site-packages/mod_python/importer.py", line 1229, in _process_target
    result = _execute_target(config, req, object, arg)

  File "/usr/local/lib/python2.5/site-packages/mod_python/importer.py", line 1128, in _execute_target
    result = object(arg)

  File "/usr/local/lib/python2.5/site-packages/mod_python/publisher.py", line 204, in handler
    module = page_cache[req]

  File "/usr/local/lib/python2.5/site-packages/mod_python/importer.py", line 1059, in __getitem__
    return import_module(req.filename)

  File "/usr/local/lib/python2.5/site-packages/mod_python/importer.py", line 296, in import_module
    log, import_path)

  File "/usr/local/lib/python2.5/site-packages/mod_python/importer.py", line 680, in import_module
    execfile(file, module.__dict__)

  File "/var/www/test.py", line 1, in <module>
    import stackless

ImportError: No module named stackless


MODULE CACHE DETAILS

Accessed:       Tue Dec  8 08:53:24 2009
Generation:     0

_mp_27cc55c5447f9e0aa13691719290c225 {
  FileName:     '/var/www/test.py'
  Instance:     1 [IMPORT]
  Generation:   0 [ERROR]
  Modified:     Tue Dec  8 08:52:43 2009
}

また、MySQLdb、nltkなどをロードできません。これらのモジュールはすべてコマンドラインでロードできます。だから私の推測では、mod_pythonは古いPythonインストールを参照しています。

何が問題になる可能性がありますか?


私はスタックレスに対してすべてをインストールしました。あなたが見ることができるように私の応答はsys.versionです

2.5.2 Stackless 3.1b3 060516 (python-2.52:76701, Dec 8 2009, 02:13:34) [GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu4)]

これはコードからの応答です:

import sys
def index(req):
  return sys.version

しかし、import stackless以下のように追加すると、前述のエラーがスローされます。

import sys
import stackless
def index(req):
  return sys.version

足りないものはありますか?

4

1 に答える 1

1

mod_pythonは、Pythonの特定のバージョンに対してコンパイルされ、そのバージョンのみを呼び出します。それが可能であると仮定すると、おそらくStacklessに対して再コンパイルする必要があります。

于 2009-12-08T14:35:46.963 に答える