He hecho un ejemplo sencillo que funciona correctamente en el 3.2.10 pero en el 3.3.1 da error.
¿Alguien me puede ayudar?
Tengo este archivo:
index_prueba.py
Código:
La configuracion de apache:from mod_python import apache, Session, util def handler(req): # pongo el tiempo de session y el tipo de contenido que voy a devolver req.content_type = 'text/html' session = Session.Session(req) if session.is_new(): obj = Algo() session['vamos'] = obj fin = session['vamos'].getVar1() req.write(fin) req.write(str(dir(session))) req.write(str(session._dbmfile)) session.save() # retorno OK para que devuelva lo impreso return apache.OK class Algo: var1 = "" def __init__(self): self.var1 = "holaaaa" def getVar1(self): return self.var1
Código:
Da el siguiente error:AddHandler mod_python .py PythonHandler index_prueba PythonDebug On PythonAutoReload On
Código:
MOD_PYTHON ERROR ProcessId: 14820 Interpreter: 'pruebamodpython.lasal' ServerName: 'pruebamodpython.lasal' DocumentRoot: '/home/lasal/domains/pruebamodpython.lasal/httpdocs' URI: '/web/index_prueba.py' Location: None Directory: '/home/lasal/domains/pruebamodpython.lasal/httpdocs/web/' Filename: '/home/lasal/domains/pruebamodpython.lasal/httpdocs/web/index_prueba.py' PathInfo: '' Phase: 'PythonHandler' Handler: 'index_prueba' 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 1229, in _process_target result = _execute_target(config, req, object, arg) File "/usr/lib/python2.5/site-packages/mod_python/importer.py", line 1128, in _execute_target result = object(arg) File "/home/lasal/domains/pruebamodpython.lasal/httpdocs/web/index_prueba.py", line 11, in handler session = Session.Session(req) File "/usr/lib/python2.5/site-packages/mod_python/Session.py", line 803, in Session timeout=timeout, lock=lock) File "/usr/lib/python2.5/site-packages/mod_python/Session.py", line 372, in __init__ timeout=timeout, lock=lock) File "/usr/lib/python2.5/site-packages/mod_python/Session.py", line 180, in __init__ if self.load(): File "/usr/lib/python2.5/site-packages/mod_python/Session.py", line 250, in load dict = self.do_load() File "/usr/lib/python2.5/site-packages/mod_python/Session.py", line 396, in do_load return cPickle.loads(dbm[self._sid]) ImportError: No module named _mp_2ae25f84f8e61ef39ed462f7b0d0b622 MODULE CACHE DETAILS Accessed: Wed Nov 25 14:57:09 2009 Generation: 1 _mp_2ae25f84f8e61ef39ed462f7b0d0b622 { FileName: '/home/lasal/domains/pruebamodpython.lasal/httpdocs/web/index_prueba.py' Instance: 1 Generation: 1 Modified: Wed Nov 25 13:37:41 2009 Imported: Wed Nov 25 14:57:08 2009 }