Доброго времени суток, пытаюсь осуществить работу QNetworkAccessManager+QNetworkRequest по https(ssl) с самоподписанными сертификатами. Но получаю всегда ошибку:
SSL handshake failed, а на стороне сервера(апача):
[Sun Oct 11 10:10:40 2015] [error] [client 127.0.0.1] Invalid method in request \x16\x03\x01.
Перепробовал уже все варианты из гугла:
QNetworkRequest request;
.....
QSslConfiguration conf = request.sslConfiguration();
conf.setPeerVerifyMode(QSslSocket::VerifyNone);
request.setSslConfiguration(conf);
.....
QNetworkAccessManager *manager = new QNetworkAccessManager(this);
// этот сигнал вообще не вызывается при ошибке...
QObject::connect(manager, &QNetworkAccessManager::sslErrors, [=](QNetworkReply * reply, const QList<QSslError> & errors){
//reply->ignoreSslErrors();
reply->ignoreSslErrors(errors);
} );
.....
QFile file("some_path/certificate.crt");
if ( file.open(QIODevice::ReadOnly))
{
QSslSocket::addDefaultCaCertificate(QSslCertificate(file.readAll()));
file.close();
}
Срабатывает только, если добавить роут к домену в hosts:
В чем тут может быть проблема?
ПС либы Open SSL доступны в path и проблема не в этом.