我到处搜索,但似乎只是我的问题或其他所有使用旁路的人我都不想要。 因此,我正在获取Windows证书存储区的拒绝访问权限。当我从python cmd访问时一切正常。我在IIS中的站点设置为管理员凭据,应用程序目录也具有管理员权限。 堆栈上有类似的问题,我已经调查了它,但我的情况似乎有所不同,我不想出于明显的原因使用未验证的上下文。
我被困住了,不知道发生了什么。有什么帮助吗?
(Windows server 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
答案 0 :(得分:3)
我知道这是一篇旧帖子,但我能够通过转到IIS中的应用程序池,选择运行我的Django应用程序的应用程序池,转到高级设置,单击ApplicationPoolIdentity旁边的三个点按钮来解决这个问题。 (至少那是我默认的内置帐户),然后将其更改为NetworkService帐户。
答案 1 :(得分:0)
我遇到了同样的问题,并使用“请求”模块而不是“ httplib”解决了它