2009-12-08 2 views
0

stackless Python으로 Apache2 mod_python 환경을 설정했고 작동 중입니다. 내가 sys.version와 파이썬 환경을 테스트 할 때, 그것은 브라우저에서mod_python이 스택없는 Python을로드하지 않습니다.

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 

제가 누락 된 것이 있습니까?

+0

명령 줄에서 실행 된 Python 인스턴스와 mod_python 사이에 sys.path에 차이점이 있습니까? "ImportError : 명명 된 모듈이 없습니다 ..."는 일반적으로 잘못된 PYTHONPATH 설정으로 인해 발생합니다. – Simon

답변

1

mod_python은 특정 버전의 Python에 대해 컴파일되며 해당 버전 만 호출합니다. 가능한 경우 Stackless에 대해 다시 컴파일해야합니다.