Question

Je joue autour d'une application Python sur CentOS 5.2. Il utilise le module Boto pour communiquer avec Amazon Web Services, qui exige la communication via une connexion HTTPS.

Lorsque je tente ma demande en cours d'exécution, je reçois une erreur concernant HTTPSConnection être manquant: "AttributeError: objet 'module' n'a pas d'attribut 'HTTPSConnection'"

Google ne renvoie pas vraiment quoi que ce soit pertinent, je l'ai essayé la plupart des solutions, mais aucune d'entre elles résoudre le problème.

Quelqu'un at-il rencontré quelque chose comme ça?

Voici le retraçage:

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'
Était-ce utile?

La solution

citant de la documentation python ( http://docs.python.org/library/httplib. html ):

Remarque est en charge HTTPS uniquement disponible si le module de socket a été compilé avec le support SSL.

Vous devez savoir comment python sur la CentOS que vous utilisez a été construit.

Autres conseils

S'il vous plaît installer OpenSSL et OpenSSL-devel avant d'installer python2.6.

Vous pouvez simplement installer ces paquets en utilisant yum, et faire une nouvelle installation de python2.6 (pas besoin d'enlever python2.6 déjà installé)

]# yum install openssl openssl-devel

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

Comment venir avez python 2.6? Dans CentOS 2.4 est standard, cela pourrait être la cause de votre problème. Peut-être la peine d'installer Boto à nouveau les chemins de bibliothèque pourrait ne pas être correcte

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top