我刚刚为python app安装了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>
我不确定我做错了什么。有人可以帮忙吗?
答案 0 :(得分:3)
此代码尝试使用HTTP但在443端口上连接到Proximo代理。请尝试以下设置:
{'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,因此从您的应用程序到代理的连接不会被加密吗?