2009-05-18 12 views
8

CentOS 5.2でPythonアプリケーションを使用しています。 Botoモジュールを使用してAmazon Web Servicesと通信します。この場合、HTTPS接続を介した通信が必要です。CentOS 5.2のPython 2.6でHTTPSConnectionモジュールが見つからない

私は名前はhttpsConnectionが不足しているされているに関するエラーを取得私のアプリケーションを実行してみてください: 「はAttributeError: 'をモジュールのオブジェクトが属性を持っていない 『の名前はhttpsConnection』」

Googleは本当に私がしました、関連する何かを返しませんほとんどのソリューションを試しましたが、どれも問題を解決しませんでした。

誰もがそれに遭遇しましたか?ここで

は、トレースバックです:

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' 

答えて

7

はPythonドキュメント(http://docs.python.org/library/httplib.html)からの引用:

HTTPSサポートソケットモジュールは、SSLサポート付きでコンパイルされた場合にのみ使用可能です。

使用しているCentOSのpythonがどのように構築されているかを知る必要があります。

+0

右うん...私は掘り行きますよ完全に問題だった設定オプション – d2kagw

+0

を見つけたら、モジュールを有効にする方法を実行するこのリンクを見つけました:http://agiletesting.blogspot.com/2008/05/compiling-python-25-with-ssl-support。 html – d2kagw

0

なぜあなたはpython 2.6を持ってきましたか? CentOS 2.4が標準で、これはあなたの問題の原因かもしれません。ライブラリのパスが正しくない可能性があるので、再度botoをインストールする価値があります。

+0

マルチプロセッシングサポートのため、2.6が必要です – d2kagw

7

python2.6をインストールする前にopensslとopenssl-develをインストールしてください。

あなたは単にyumを使用してこれらのパッケージをインストールすることができ、かつのpython2.6の再インストールします(既にインストールされているのpython2.6を削除する必要はありません)

]# yum install openssl openssl-devel 

Python-2.6.x]# ./configure 
Python-2.6.x]# make && make altinstall 
関連する問題