首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >QT4.7 SSL错误:“证书已过期”

QT4.7 SSL错误:“证书已过期”
EN

Stack Overflow用户
提问于 2011-03-16 05:51:37
回答 2查看 2.8K关注 0票数 2

我们使用OpenSSL库编译了QT代码。但我们无法加载HTTPS网页。SSL错误处理程序正在抛出“证书已过期”异常。我们使用http://orkut.com来测试SSL问题。

在重新编译Qt源代码之前发生了什么?

以下错误,当我们试图启动HTTPS urls时

代码语言:javascript
复制
QSslSocket: cannot call unresolved function SSLv3_client_method
QSslSocket: cannot call unresolved function SSL_CTX_new
QSslSocket: cannot call unresolved function SSL_library_init
QSslSocket: cannot call unresolved function ERR_get_error
QSslSocket: cannot call unresolved function ERR_error_string

我们做了什么?

下载并安装prompt

  • Navigate“C:\Qt\4.7.1”

  • configure.exe -debug-and-release -webkit -openssl -I C:\OpenSSL-Win32\Include -L C:\OpenSSL-Win32\Lib

  • nmake

  • Win32 OpenSSL v1.0.0d Light

  • 打开VS2008命令

使用openSSL dll编译后出错

  1. 当我们尝试使用webview加载SSL url时,我们得到以下错误
  2. “证书过期了”
  3. 我们处理了显示为“证书过期”错误的networkAccessManager sslErrors(QNetworkReply*,QList<QSslError>)事件。
  4. 不清楚需要哪些额外设置来修复这个问题H 225G 226

当我在32位系统中测试我的代码时,OpenSSL dll按预期工作。当我使用64位系统时,我会得到“证书过期”错误。我使用32位版本在64位系统中运行我的代码。另外,我使用的是OpenSSL 32位版本。

EN

回答 2

Stack Overflow用户

发布于 2011-03-16 08:23:44

你检查过系统的日期了吗?

更新

看起来你有32/64位错配的问题。

如果您的应用程序是64位,您应该使用64位版本的OpenSSL。在Creator中运行应用程序时,安装64位OpenSSL并确保它在路径中(您可以在项目/运行设置/运行环境中将OpenSSL的路径添加到路径中)

票数 1
EN

Stack Overflow用户

发布于 2011-03-16 11:13:31

您还没有正确部署- Qt无法在运行时找到openssl,这就是为什么您得到无法调用未解析的函数消息的原因。不知道为什么你会得到过期的证书错误,但结合在一起。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5321549

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档