mod_python ne se charge pas stackless Python
-
18-09-2019 - |
Question
J'ai installé un environnement mod_python avec stackless Python Apache2 et il fonctionne.
Et quand je teste l'environnement Python avec sys.version
, il montre
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)]
dans le navigateur.
Mais quand je import stackless
il montre:
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
}
Aussi je ne suis pas en mesure de charger MySQLdb, NLTK, etc. Tous ces modules peuvent être chargés dans la ligne de commande. Donc, je pense est en quelque sorte mod_python fait référence l'ancienne installation Python.
Quel pourrait être le problème?
J'ai installé tout contre stackless. Comme vous pouvez le voir ma réponse pour sys.version
est
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)]
Ceci est la réponse du code:
import sys
def index(req):
return sys.version
Mais quand j'ajoute import stackless
comme ci-dessous, il jette l'erreur ci-dessus:
import sys
import stackless
def index(req):
return sys.version
Y at-il quelque chose que je suis absent?
La solution
mod_python est compilé avec une version spécifique de Python, et n'appeler cette version. Vous aurez probablement besoin de recompiler contre Stackless, en supposant que ce soit possible.