2

Python アプリ用の Proximo heroku アドオンをインストールしました。シェルをロードしてタイヤを蹴ったところ、HTTP アドレスをヒットすると機能しますが、HTTPS アドレスをヒットすると機能しません。HTTP アドレスは Proximo ログに表示され、HTTPS アドレスはタイムアウトになり、ログに何も残りません。

次のコードを使用してテストしました。

import urllib2, urllib
from django.conf import settings

proxy  = urllib2.ProxyHandler(settings.PROXIES_DICT)
auth   = urllib2.HTTPBasicAuthHandler()
opener = urllib2.build_opener(proxy, auth, urllib2.HTTPHandler)
urllib2.install_opener(opener)

urllib2.urlopen("http://google.com").read()  # works fine
urllib2.urlopen("https://google.com").read() # times out

PROXIES_DICT は次のようになります (パスワードは置き換えられます)。

>>> pprint(settings.PROXIES_DICT)
{'http': 'http://proxy:password@proxy-54-235-72-96.proximo.io',
 'https': 'http://proxy:password@proxy-54-235-72-96.proximo.io'}

また、タイムアウト例外は次のようになります。

URLError: <urlopen error [Errno 60] Operation timed out>

何が間違っているのかわかりません。誰でも助けることができますか?

4

1 に答える 1

3

このコードは、HTTP を使用して Proximo プロキシに接続しようとしますが、ポートは 443 です。次の設定を試してください。

{'http': 'http://proxy:password@proxy-54-235-72-96.proximo.io',
 'https': 'http://proxy:password@proxy-54-235-72-96.proximo.io:80'}

Proximo は HTTPS をリッスンしないため、アプリケーションからプロキシへの接続は暗号化されません。

于 2013-04-30T16:13:22.953 に答える