2

我已经使用 web2py 在 python 中创建了一个 webapp,它按照推荐的方式使用 Janrain 进行了 3rd 方身份验证。
在我的本地服务器上它工作得非常好,但是现在当我在pythonanywhere上部署时,身份验证给了我以下错误

“类'urllib2.URLError'urlopen错误隧道连接失败:403禁止”

===========

  File "/usr/lib/python2.7/urllib2.py", line 127, in urlopen
    return _opener.open(url, data, timeout)
  File "/usr/lib/python2.7/urllib2.py", line 404, in open
    response = self._open(req, data)
  File "/usr/lib/python2.7/urllib2.py", line 422, in _open
    '_open', req)
  File "/usr/lib/python2.7/urllib2.py", line 382, in _call_chain
    result = func(*args)
  File "/usr/lib/python2.7/urllib2.py", line 1222, in https_open
    return self.do_open(httplib.HTTPSConnection, req)
  File "/usr/lib/python2.7/urllib2.py", line 1184, in do_open
    raise URLError(err)
URLError: <urlopen error Tunnel connection failed: 403 Forbidden>

===========================

对于第三方身份验证,我使用了 yahoomail id。

4

1 回答 1

5

现在已修复此问题,但如果其他人遇到此问题或类似问题:

问题是 PythonAnywhere 上的免费用户限制了互联网,它通过代理并且只允许站点白名单

这些网站当时不在白名单上,但我们现在已经添加了它们,并且 janrain/yahoo 邮件登录现在可以使用.janrain.com.rpxnow.com

因此,对于碰巧通过代理并尝试使用此服务的任何其他人,这些是您需要添加的站点。(对于喜欢运行 noscript 的偏执狂的人也可能会感兴趣,如果您发现某些联合身份验证系统出现故障,您可能需要解除对 rpxnow 的阻止)。

祝大家编码愉快!

于 2014-11-20T13:49:15.197 回答