2

我到处搜索,但似乎这只是我的问题,或者其他所有人都在使用我不想要的旁路。所以我被拒绝访问 Windows 证书存储。当我从 python cmd 访问时,一切正常。我在 IIS 中的站点设置为管理员凭据,并且应用程序目录也具有管理员权限。堆栈上有类似的问题,我已经调查过了,但我的情况似乎不同,出于明显的原因,我不想使用未经验证的上下文。

我被卡住了,不明白发生了什么。有什么帮助吗?

(Windows 服务器 2012 r2、django 1.8、python 2.7.9、IIS 8.5)

conn = httplib.HTTPSConnection(PAYPAL_LIVE_HOST, context=ssl._create_default_https_context())

    Traceback (most recent call last):
  File "c:\Python27\lib\site-packages\django\core\handlers\base.py", line 132, in get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "c:\Python27\lib\site-packages\django\contrib\auth\decorators.py", line 22, in _wrapped_view
    return view_func(request, *args, **kwargs)
  File "C:\inetpub\vhosts\sgtmarkets.com\rails\SGTMarketsBO\website\views\finance\deposit.py", line 77, in paypal
    conn = httplib.HTTPSConnection(PAYPAL_LIVE_HOST, context=ssl._create_default_https_context())
  File "c:\Python27\lib\ssl.py", line 427, in create_default_context
    context.load_default_certs(purpose)
  File "c:\Python27\lib\ssl.py", line 378, in load_default_certs
    self._load_windows_store_certs(storename, purpose)
  File "c:\Python27\lib\ssl.py", line 365, in _load_windows_store_certs
    for cert, encoding, trust in enum_certificates(storename):
WindowsError: [Error 5] Access is denied
4

2 回答 2

4

我知道这是一篇旧帖子,但我可以通过转到 IIS 中的应用程序池,选择运行 Django 应用程序的应用程序池,转到高级设置,单击 ApplicationPoolIdentity 旁边的三个点按钮来解决这个问题(至少那是我默认的内置帐户),然后将其更改为 NetworkService 帐户。

于 2017-03-20T16:52:03.237 回答
0

我遇到了同样的问题,并用“请求”模块而不是“httplib”解决了它

于 2019-02-12T12:05:14.937 回答