2009-05-18 16 views
8

Estoy jugando con una aplicación Python en CentOS 5.2. Utiliza el módulo Boto para comunicarse con Amazon Web Services, que requiere comunicación a través de una conexión HTTPS.Falta el módulo HTTPSConnection en Python 2.6 en CentOS 5.2

Cuando trato de ejecutar mi aplicación puedo obtener un error con respecto HTTPSConnection faltando: "AttributeError: Objeto de 'módulo' no tiene atributo 'HTTPSConnection'"

Google en realidad no devuelve nada relevante, no tengo intenté la mayoría de las soluciones, pero ninguna solucionó el problema.

¿Alguien ha encontrado algo así?

Aquí está el rastreo:

Traceback (most recent call last): 
File "./chatter.py", line 114, in <module> 
    sys.exit(main()) 
File "./chatter.py", line 92, in main 
    chatter.status() 
File "/mnt/application/chatter/__init__.py", line 161, in status 
    cQueue.connect() 
File "/mnt/application/chatter/tools.py", line 42, in connect 
    self.connection = SQSConnection(cConfig.get("AWS", "KeyId"), cConfig.get("AWS", "AccessKey")); 
File "/usr/local/lib/python2.6/site-packages/boto-1.7a-py2.6.egg/boto/sqs/connection.py", line 54, in __init__ 
    self.region.endpoint, debug, https_connection_factory) 
File "/usr/local/lib/python2.6/site-packages/boto-1.7a-py2.6.egg/boto/connection.py", line 418, in __init__ 
    debug, https_connection_factory) 
File "/usr/local/lib/python2.6/site-packages/boto-1.7a-py2.6.egg/boto/connection.py", line 189, in __init__ 
    self.refresh_http_connection(self.server, self.is_secure) 
File "/usr/local/lib/python2.6/site-packages/boto-1.7a-py2.6.egg/boto/connection.py", line 247, in refresh_http_connection 
    connection = httplib.HTTPSConnection(host) 
AttributeError: 'module' object has no attribute 'HTTPSConnection' 

Respuesta

7

citando de la documentación de Python (http://docs.python.org/library/httplib.html):

Nota HTTPS apoyo sólo está disponible si el módulo zócalo fue compilado con soporte SSL.

Debería averiguar cómo se creó Python en el CentOS que está utilizando.

+0

sí a la derecha ... voy a ir cavando y encuentre las opciones de configuración – d2kagw

+0

que fueron totalmente el problema, encontré este enlace que explica cómo habilitar el módulo: http://agiletesting.blogspot.com/2008/05/compiling-python-25-with-ssl-support. html – d2kagw

0

¿Cómo es que tienes Python 2.6? En CentOS 2.4 es estándar, esta podría ser la causa de su problema. Puede valer la pena volver a instalar boto ya que las rutas de la biblioteca pueden no ser correctas

+0

Necesito 2.6 debido al soporte de multiprocesamiento – d2kagw

7

Instale openssl y openssl-devel antes de instalar python2.6.

Usted puede simplemente instalar esos paquetes usando yum, y hacer una reinstalación de python2.6 (sin necesidad de retirar python2.6 ya instalado)

]# yum install openssl openssl-devel 

Python-2.6.x]# ./configure 
Python-2.6.x]# make && make altinstall