【问题标题】:Wagtail Recaptcha Localhost - SSL: CERTIFICATE_VERIFY_FAILEDWagtail Recaptcha 本地主机 - SSL:CERTIFICATE_VERIFY_FAILED
【发布时间】:2017-05-22 03:09:42
【问题描述】:

如果需要提供更多或不同的信息,请告诉我。没必要我不想加太多。

我正在尝试将 Wagtail recaptcha 合并到联系我的表单中。我可以很好地进行谷歌验证,但是一旦我点击提交,我就会遇到错误。我目前遇到了这个错误:SSL: CERTIFICATE_VERIFY_FAILED 你可以在这里看到https://pastebin.com/4WaqX1xT 在我当前的设置中,我使用的是./ngrok 8000。我的 wagtail 应用程序运行在 localhost:8000

这些是我在 google recaptcha 管理面板上拥有的域

localhost
whateverlettersgeneratedby.ngrok.io
127.0.0.1

在我的设置 base.py 中,我将它包含在我的 INSTALLED_APPS 中

INSTALLED_APPS = [
    ...
    'sslserver',
    'captcha',
    'wagtailcaptcha',
    ...
]

话虽如此,我确实尝试了 django-sslserver 并收到了同样的错误。当我使用 HTTPS 而不是 HTTP 访问 url 时,HTTPS 被划掉了。

同样在 base.py 中,我正在使用 Google Recaptcha 的开发密钥。使用我的实际密钥也会导致生成相同的错误。

RECAPTCHA_PUBLIC_KEY = '6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI'
RECAPTCHA_PRIVATE_KEY = '6LeIxAcTAAAAAGG-vFI1TnRWxMZNFuojJ4WifJWe'
NOCAPTCHA = True
RECAPTCHA_USE_SSL = False
SECURE_SSL_REDIRECT = False

我尝试过的其他事情:stunnel,我得到一个关于 CSRF 验证失败的 403 https://pastebin.com/JXWVWNJq

我的 stunnel 设置来自 http://userpath.co/blog/a-simple-way-to-run-https-on-localhost/ 然后我执行了下面的命令,但是当我尝试使用 HTTPS 访问 url 时,HTTPS 被划掉了。

HTTPS=on python manage.py runserver

我的 Jinja 模板确实使用了 csrf 令牌 https://pastebin.com/meXdkbfC

【问题讨论】:

    标签: python django ssl wagtail


    【解决方案1】:

    问题是发出的 请求未通过 SSL 验证。您的本地设置不需要在 HTTPS 下运行。尝试使用pip install certifi 安装证书包或查看这些答案"SSL: CERTIFICATE_VERIFY_FAILED" Error

    【讨论】:

    • 好的,我在某个时候尝试过 certifi 并且同样的错误。因此,如果您能帮助我澄清其他问题的解决方案,那将不胜感激。问题:在这种情况下,sslcontext 代码会去哪里?它会是项目之外的单独文件吗?
    • 我不认为我发布的链接中接受的答案是要走的路,你可以尝试设置NOCAPTCHA = FalseRECAPTCHA_USE_SSL = False见:github.com/praekelt/django-recaptcha/blob/develop/captcha/…
    • 改变 NOCAPTCHA = False 而不是 NOCAPTCHA = True 有效。显然在较新版本的验证码之前。
    猜你喜欢
    • 2011-03-15
    • 2011-05-30
    • 2022-10-21
    • 2015-03-20
    • 2019-02-05
    • 1970-01-01
    • 2015-02-25
    • 1970-01-01
    相关资源
    最近更新 更多